Boucle pour changer hauteur de ligne ne fct pas [Résolu]

Signaler
Messages postés
2
Date d'inscription
dimanche 3 mai 2020
Statut
Membre
Dernière intervention
3 mai 2020
-
Messages postés
2
Date d'inscription
dimanche 3 mai 2020
Statut
Membre
Dernière intervention
3 mai 2020
-
Bonjour,
Je debut dans VBA et le langage Objet en général.
Je souhaite , sous Excel, augmenter la hauteur de ligne , quand la 2nd cellule de celle ci n'est pas vide . et ceci pour toutes les lignes jusqu'à la fin de ma sélection.

Je vous montre 2 Macro
La Macro 3
fonctionne , mais elle utilise pas la variable i de la boucle For...Next dans la Cells(10,2)
La Macro 4
Je remplace le Cells(10,2) par Cells(i,2).
mais ça plante sur la ligne avec "erreur définit par l'application ou par l'objet"
Je pensais (peut être naïvement ) que la variable i pouvait remplacer la valeur absolue "10".

Qu'est ce qui cloche dans mon code ou mon chemin de pensée ?
Si une bonne oeuvre pouvait m'aider .
un grand merci par avance.
Marc

Sub Macro3()          'cette macro fonctionne
Dim i As Integer
DL = Range("B500").End(xlUp).Row
' Mise en page des Lignes
Range("A1" & ":N" & DL).Select
Selection.Activate
For i = 0 To DL
    If Cells(10, 2).Value <> "" Then
            Cells(10, 2).Select
            Selection.RowHeight = 55
    End If
Next i
End Sub

Sub Macro4() 'cette macro fonctionne ne fonctionne pas en remplaçant dans Cells(10,2) par une variable Cells (i,2)
Dim i As Integer
DL = Range("B500").End(xlUp).Row
' Mise en page des Lignes
Range("A1" & ":N" & DL).Select
Selection.Activate
For i = 0 To DL
    If Cells(i, 2).Value <> "" Then
            Cells(i, 2).Select
            Selection.RowHeight = 55
    End If
Next i
End Sub


EDIT : Ajout des balises de code

2 réponses

Messages postés
28946
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 juillet 2020
2 613
Bonjour,

i à zéro.... ce correspond pas à une ligne..
De plus, il faut éviter de faire des .select ou des .activate

Teste ça
Sub Macro4() 'cette macro fonctionne ne fonctionne pas en remplaçant dans Cells(10,2) par une variable Cells (i,2)
Dim i As Integer
DL = Range("B500").End(xlUp).Row

For i = 1 To DL
    If Cells(i, 2).Value <> "" Then
       Cells(i, 2).RowHeight = 55
    End If
Next i
End Sub

Messages postés
2
Date d'inscription
dimanche 3 mai 2020
Statut
Membre
Dernière intervention
3 mai 2020

P***n, Tant de souffrance pour ça !!!!
j'avais pas vu. un grand grand merci pour m'avoir éclairer sur cette bourde et pour le conseil !!