[VB6 -> VBA]Excel numéroter des cellules et des cellules fusionnées de couleurs, [Résolu]

Signaler
Messages postés
3
Date d'inscription
vendredi 7 mai 2004
Statut
Membre
Dernière intervention
25 juillet 2013
-
jordane45
Messages postés
28097
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 avril 2020
-
Bonjour,
je réalise un planning annuel avec Matin et après midi et je mets dans les cellules de couleur définie en R38 un numéro croissant jusque là tout va sauf que j'ai des cellules fusionnés (matin et après midi )et là il faut sauter la cellule car elle contient déjà le numéro
For each cell in range ("C5:AT35")
if cell.interior.color [R38].interior.color then Cell.value num
num=num+1
si la cellule est fusionnée sauter la cellule
End if
next cell

3 réponses

Messages postés
28097
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 avril 2020
325
c'est la première fois que je fais (dans la programmation) appel à une fonction


Et bien il faut que ça ne soit pas la seule

Les fonctions ont pour avantages (entre autres)
- d'être réutilisables facilement
- Faciliter le "débogage" de vos programmes
- faciliter la modification de vos programmes

Sub MonProgrammeAMoi()

Action1 = maPremiereFonction()

Action2 = MaSecodeFonction()

'ah ben tiens, je dois encore faire la meme chose qu'à ma premiere action
'Hop..j'appele de nouveau ma fonction ^^
Action3 = maPremiereFonction()

Action4 = EncoreUneFonction()

'Etc..

End Sub


à une prochaine fois pour d'autres problèmes à automatiser

Avec plaisir.



PS: Pensez à clore ce sujet ( REPONSE ACCEPTEE )




Cordialement,
Jordane
_____________________________________________________
Règles du forum à lire avant de poster une question : ICI
Messages postés
28097
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 avril 2020
325
Bonjour,

Voici de quoi vous mettre sur la voie.

Sub test()
Dim maplage As Range
Set maplage = Range("A1:D10")
For Each cellule In maplage
    Debug.Print cellule.Address & " " & IsMerge(cellule.Address)
Next


End Sub

Function IsMerge(cel As String)

Set c = Range(cel)
 If c.MergeCells Then
     Debug.Print "FUSION > " & c.MergeArea.Address
     IsMerge = True
  Else
    IsMerge = False
  End If
End Function



PS: Lors de vos prochains messages, merci d'utiliser les balises de code (comme ci-dessus)

Cordialement,
Jordane
_____________________________________________________
Règles du forum à lire avant de poster une question : ICI
Messages postés
3
Date d'inscription
vendredi 7 mai 2004
Statut
Membre
Dernière intervention
25 juillet 2013




Bonjour et merci pour la piste je peux maintenant sauter les cellules fusionnées. c'est la première fois que je fais (dans la programmation) appel à une fonction, en général c'est plutot une programmation empirique.
fait de petits bouts (résultat de macro automatique)
mais à ma décharge je programme très peu.
Merci encore et à une prochaine fois pour d'autres problèmes à automatiser