Bonjour,
Je suis en stage de fin d'études, je travaille actuellement sur la création template pour une méthode d'analyse de risque. Je commence petit à petit à prendre en main les macros.
Voilà mon problème :
Je souhaite créer une macro permettant de sauter des lignes entre chaque risque.
En enregistrant le une macro à la main pour le saut de ligne. J'obtiens le code suivant (par exemple) :
Rows("10:10").Select
Selection.Insert shift=xlDown, CopyOrigin xlFormatFrontLeftOrAbove.
J'utilise une boucle pour parcourir le tableau et selon si la colonne "Numéro Risk" contient un chiffre alors je rajoute une ligne au dessus.
Voilà mon code :
Sub saut_ligne()
Dim saut_ligne As Variant
Dim lignedebutrisk_init As Long
Dim lignefinrisk As Long
Dim colonnerisknumber As Long
lignedebutrisk_init = Range("A1:M30").Find("#B13", LookAt:=xlWhole).Row
lignefinrisk = Range("A1:M30").Find("#B14", LookAt:=xlWhole).Row
colonnerisknumber = Range("A1:M30").Find("#B15", LookAt:=xlWhole).Column
For saut_ligne = lignedebutrisk_init + 1 To lignefinrisk
If Cells(saut_ligne, colonnerisknumber) <> "" Then
Cells(saut_ligne, colonnerisknumber).Select
Selection.Insert Shift:=xlDown
End If
Next saut_ligne
End Sub
Il faudrait que je remplace "Cells(saut_ligne, colonnerisknumber).Select" par Rows("valeur de saut_ligne: valeur de saut_ligne"). Je ne sais pas comment faire pour passer la valeur de ma variable en texte.
Si vous avez la clé à mon problème je suis preneur
Je suis en stage de fin d'études, je travaille actuellement sur la création template pour une méthode d'analyse de risque. Je commence petit à petit à prendre en main les macros.
Voilà mon problème :
Je souhaite créer une macro permettant de sauter des lignes entre chaque risque.
En enregistrant le une macro à la main pour le saut de ligne. J'obtiens le code suivant (par exemple) :
Rows("10:10").Select
Selection.Insert shift=xlDown, CopyOrigin xlFormatFrontLeftOrAbove.
J'utilise une boucle pour parcourir le tableau et selon si la colonne "Numéro Risk" contient un chiffre alors je rajoute une ligne au dessus.
Voilà mon code :
Sub saut_ligne()
Dim saut_ligne As Variant
Dim lignedebutrisk_init As Long
Dim lignefinrisk As Long
Dim colonnerisknumber As Long
lignedebutrisk_init = Range("A1:M30").Find("#B13", LookAt:=xlWhole).Row
lignefinrisk = Range("A1:M30").Find("#B14", LookAt:=xlWhole).Row
colonnerisknumber = Range("A1:M30").Find("#B15", LookAt:=xlWhole).Column
For saut_ligne = lignedebutrisk_init + 1 To lignefinrisk
If Cells(saut_ligne, colonnerisknumber) <> "" Then
Cells(saut_ligne, colonnerisknumber).Select
Selection.Insert Shift:=xlDown
End If
Next saut_ligne
End Sub
Il faudrait que je remplace "Cells(saut_ligne, colonnerisknumber).Select" par Rows("valeur de saut_ligne: valeur de saut_ligne"). Je ne sais pas comment faire pour passer la valeur de ma variable en texte.
Si vous avez la clé à mon problème je suis preneur