Bonjour,
J'ai récupéré une macro (qui est en bas du message) et je voudrais comprendre une ligne avec laquelle j'ai du mal. Cette ligne est :
dernLigne = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Count - 1
je voudrais comprendre le "+ " et le ".count -1" je sais que je part de la dernière ligne non vide et que je remonte avec un step -1 mais pourquoi le faire compter à ce moment ?
Autre chose : For I = dernLigne To 1 Step -1
à quoi sert le "To 1" c'est pour le faire aller jusqu'à 1 en remontant ? Pourtant je n'ai aucune variable égale à 1.
Dernière chose, je suis un grand amateur débutant et je voudrais apprendre à faire des macros pour Excel. Utilisez les fonctions Excel, des userforms (liste et msgbox), mais je sais à peine déclarer mes variables et je ne connais ps le vocabulaire. Avez-vous un livre à me conseiller, un site pour les nuls ou encore est-ce que l'aide sous Microsoft VB Editor suffit ?
Merci beaucoup.
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 28/11/2009 par ygail
'
Dim myCtrl, dernLigne, I
'détermine le numéro de la dernière ligne utilisée
dernLigne = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Count - 1
'désactive la mise à jour de l'écran afin d'accélérer les traitements
Application.ScreenUpdating = False
'Pour toutes les lignes en partant de la dernière
For I = dernLigne To 1 Step -1
'La fonction Excel CountA correspond à =NBVAL
If Application.WorksheetFunction.CountA(Range("A" & I & ":b" & I)) = 0 Then
Rows(I).Hidden = True
Shift:=xlUp
End If
suivant:
Next I
End Sub
Yohann
J'ai récupéré une macro (qui est en bas du message) et je voudrais comprendre une ligne avec laquelle j'ai du mal. Cette ligne est :
dernLigne = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Count - 1
je voudrais comprendre le "+ " et le ".count -1" je sais que je part de la dernière ligne non vide et que je remonte avec un step -1 mais pourquoi le faire compter à ce moment ?
Autre chose : For I = dernLigne To 1 Step -1
à quoi sert le "To 1" c'est pour le faire aller jusqu'à 1 en remontant ? Pourtant je n'ai aucune variable égale à 1.
Dernière chose, je suis un grand amateur débutant et je voudrais apprendre à faire des macros pour Excel. Utilisez les fonctions Excel, des userforms (liste et msgbox), mais je sais à peine déclarer mes variables et je ne connais ps le vocabulaire. Avez-vous un livre à me conseiller, un site pour les nuls ou encore est-ce que l'aide sous Microsoft VB Editor suffit ?
Merci beaucoup.
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 28/11/2009 par ygail
'
Dim myCtrl, dernLigne, I
'détermine le numéro de la dernière ligne utilisée
dernLigne = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Count - 1
'désactive la mise à jour de l'écran afin d'accélérer les traitements
Application.ScreenUpdating = False
'Pour toutes les lignes en partant de la dernière
For I = dernLigne To 1 Step -1
'La fonction Excel CountA correspond à =NBVAL
If Application.WorksheetFunction.CountA(Range("A" & I & ":b" & I)) = 0 Then
Rows(I).Hidden = True
Shift:=xlUp
End If
suivant:
Next I
End Sub
Yohann