Apliquer cette macro à plusieur ligne
Résolu
julien
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je ne sais pas comment éditer un titre qui correspond exactement à ma demande , alors je me justifie ici ..
Dans cette macro je fais une conversion à l'aide d'un tableau présent sur la feuille et je reporte la conversion sur la ligne correspondante.
Actuellement ce code permet , en découpant la chaine de caractère, de convertir à partir du code hexadécimal en cellule (2,25) et de recopier la valeure de la cellule de conversion (en AU) sur la ligne correspondante au code hexa
Je voudrais qu'il fasse exactement la même chose pour les ligne suivante ( boucle )
sachant que le numéro de ligne est aléatoire ( 1 , 2 , 3 ... n ligne)
Je ne sais pas si cela est claire , ci -joint un extrait de mon fichier ..
HELP ME PLEASE :)
http://www.cjoint.com/c/FBzo4cFxYcp
Je ne sais pas comment éditer un titre qui correspond exactement à ma demande , alors je me justifie ici ..
Dans cette macro je fais une conversion à l'aide d'un tableau présent sur la feuille et je reporte la conversion sur la ligne correspondante.
Actuellement ce code permet , en découpant la chaine de caractère, de convertir à partir du code hexadécimal en cellule (2,25) et de recopier la valeure de la cellule de conversion (en AU) sur la ligne correspondante au code hexa
Je voudrais qu'il fasse exactement la même chose pour les ligne suivante ( boucle )
sachant que le numéro de ligne est aléatoire ( 1 , 2 , 3 ... n ligne)
Je ne sais pas si cela est claire , ci -joint un extrait de mon fichier ..
HELP ME PLEASE :)
http://www.cjoint.com/c/FBzo4cFxYcp
A voir également:
- Apliquer cette macro à plusieur ligne
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Partager photos en ligne - Guide
- Aller à la ligne excel - Guide
- Mètre en ligne - Guide
- Apparaitre hors ligne instagram - Guide
1 réponse
Bonjour,
Ton code modifié : (tu n'as plus qu'à appeler la Boucle plutôt que ta Conversion_HEXA)
Ton code modifié : (tu n'as plus qu'à appeler la Boucle plutôt que ta Conversion_HEXA)
Sub Boucle() Dim DLig As Long, Lign As Long DLig = Sheets("Feuil1").Columns(25).Find("*", , , , , xlPrevious).Row For Lign = 2 To DLig Conversion_HEXA Lign Next End Sub Sub Conversion_HEXA(maLign As Long) ' Ce programme permet de convertir dans un tableau la première ligne hexadécimal en valeur exploitable pour ensuite ' recopier les valeurs sur la ligne correspondante ' (Attention la ligne ou sera copier les chaines hexa doit être de format "TEXTE" ' pour éviter que " E8 " ne soit traduit en E puissance ) . j = 11 ' J prend la valeur 11 X = 1 ' x prend la valeur 1 k = 26 ' k prend la valeur 26 'Cells(maLign, 25).Select ' Selection de la celule (2,25) qui correpond à la première ligne héxadécimale n = Len(Cells(maLign, 25)) ' La variable n prend la valeur du nombre de caractère dans la cellule If n = 102 Then ' Si n = 102 , alors , ( Si le code à plus de 15 chaines de caractère , marquer " Unknow") While j <= 25 And X <= 102 ' Tant que j <= 25 et que x <= 2 102 alors , Cells(j, 45).Value = Mid(Cells(maLign, 25).Value, X, 4) ' La cellule (j,45) prend la valeur de la chaine de caractère correspondante ' x pour le numéro du caractère ou débute l'extraction est 4 pour le nombre de caractèreà extraire Cells(maLign, k).Value = Cells(j, 47) ' La cellule (j,47) prend la valeur de la cellule (2,k ) ( Transposition de la contenance du tableau en ligne X = X + 7 ' x s'incrémente de 7 ( pour arriver à la prochaine chaine de caractère j = j + 1 ' j s'incrémente de 1 (pour passer à la ligne suivant ou sera copié la chaine hexa ) k = k + 1 Wend ' Fin de la boucle Else ' Sinon While j <= 25 And X <= 102 ' Tant que j <= 25 et que x <= 2 102 alors , Cells(j, 45).Value = "Unknow" ' La cellule (j,45) prend la valeur "Unknow" ( Chaine de caractères différents de 15) Cells(maLign, k).Value = "-" ' La cellule (2,k) prend la valeur " - " pour indiquer un paramètre inconnu X = X + 7 ' x s'incrémente de 7 ( pour arriver à la prochaine chaine de caractère) j = j + 1 ' j s'incrémente de 1 (pour passer à la ligne suivante ou sera copié la chaine hexa ) k = k + 1 ' k s'incrémente de 1 ( Pour passer à la colonne suivante) Wend ' Fin de la boucle End If ' Fin de la boucle End Sub
Clap Clap Clap !!!! Le code marche parfaitement je te remercie énormément et te souhaite un bon weekend un peu en avance :D
A bientôt peut-être :)
Merci et bon week end à toi également.