Ligne esquivée

Résolu/Fermé
Shadorb Messages postés 53 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 20 juin 2016 - 6 avril 2016 à 14:49
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 - 8 avril 2016 à 11:19
Bonjour,

J'ai un problème que j'avais encore jamais vu. A cette ligne
Worksheets(1).Range(colonne & ligne) = "test"
il ne me l’exécute que en mode débug. Ne faite pas attention aux msgBox c'était pour être sur, les message box s'execute totalement mais la ligne entre ne fais strictement rien. ( Sauf en mode débug) idée ?

Cette macro était censer copier les colonnes d'une feuille à une autre, et si la prochaine valeur n'est pas la même que la précèdente il saute une ligne. (Pour le débug il met juste test à la ligne ou il doit sauter).

For Each cell In rangeCode
'MsgBox (StrComp(codeActuel, cell.Value, vbTextCompare) = -1)
If (StrComp(codeActuel, cell.Value, vbTextCompare) = -1) Then
ligne = cell.Row
colonne = Split(cell.Address, "$")(1)
MsgBox (colonne)
MsgBox (ligne)
Worksheets(1).Range(colonne & ligne) = "test"
MsgBox ("osef de la ligne")
End If
Worksheets(1).Range("B" & cell.Row - 3) = Worksheets(2).Range("B" & cell.Row)
codeActuel = cell.Value
Next

1 réponse

ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
8 avril 2016 à 11:19
Bonjour Shadorb, bonjour le forum,

Peut-être comme ça :

Sub Macro1()
For Each cell In rangeCode
    'MsgBox (StrComp(codeActuel, cell.Value, vbTextCompare) = -1)
    If (StrComp(codeActuel, cell.Value, vbTextCompare) = -1) Then
        ligne = cell.Row
        colonne = Cells.Column 'Split(cell.Address, "$")(1)
        MsgBox (colonne)
        MsgBox (ligne)
        Worksheets(1).Cells(ligne, colonne) = "test"
        MsgBox ("osef de la ligne")
    End If
    Worksheets(1).Range("B" & cell.Row - 3) = Worksheets(2).Range("B" & cell.Row)
    codeActuel = cell.Value
Next
End Sub

0