Un petit programme sous excel
Résolu
Qhes
Messages postés
180
Statut
Membre
-
Qhes Messages postés 180 Statut Membre -
Qhes Messages postés 180 Statut Membre -
Bonjour,
Je ne suis pas douée du tout en informatique. Je viens tout juste d'apprendre qu'il y avait des choses nommées macro pouvant réaliser des programme sous excel.
Je ne savais pas avant ce matin ni que ca existait ni que votre forum existait...
j'ai une liste de 15 000 lignes sous excel
en colonne A il y a un code a 9 caractère (qu'on va nommer code A)
en colonne B il y a un autres code a 6 ou 8 caractère (qu'on va nommer code B)
Le code de la colonne a peut etre répété deux ou trois fois avec des code en colonne B diférents.
Le truc qui serait vraiment génial ca serait que dès qu'il y a deux code A et A1
dans la colonne B correspondant on ajoute un alt+esp et qu'on ecrive le code B1 en dessous du code B ou vice versa.
Exemple :
A06200119 - ZUA035
A06200119 - ZUA036
A06200121 - ZUA037
A06200122 - ZUA038
A06200122 - ZUA045
A06200125 - ZUA055
A06200125 - ZUA065
A06200126 - ZUA066
Ca devrait donner :
A06200119 - ZUA035
- ZUA036
A06200121 - ZUA037
A06200122 - ZUA038
- ZUA045
A06200125 - ZUA055
- ZUA065
A06200126 - ZUA066
Je ne suis pas douée du tout en informatique. Je viens tout juste d'apprendre qu'il y avait des choses nommées macro pouvant réaliser des programme sous excel.
Je ne savais pas avant ce matin ni que ca existait ni que votre forum existait...
j'ai une liste de 15 000 lignes sous excel
en colonne A il y a un code a 9 caractère (qu'on va nommer code A)
en colonne B il y a un autres code a 6 ou 8 caractère (qu'on va nommer code B)
Le code de la colonne a peut etre répété deux ou trois fois avec des code en colonne B diférents.
Le truc qui serait vraiment génial ca serait que dès qu'il y a deux code A et A1
dans la colonne B correspondant on ajoute un alt+esp et qu'on ecrive le code B1 en dessous du code B ou vice versa.
Exemple :
A06200119 - ZUA035
A06200119 - ZUA036
A06200121 - ZUA037
A06200122 - ZUA038
A06200122 - ZUA045
A06200125 - ZUA055
A06200125 - ZUA065
A06200126 - ZUA066
Ca devrait donner :
A06200119 - ZUA035
- ZUA036
A06200121 - ZUA037
A06200122 - ZUA038
- ZUA045
A06200125 - ZUA055
- ZUA065
A06200126 - ZUA066
A voir également:
- Un petit programme sous excel
- Liste déroulante excel - Guide
- Trier du plus petit au plus grand excel - Guide
- Word et excel gratuit - Guide
- Programme demarrage windows - Guide
- Déplacer colonne excel - Guide
6 réponses
bonjour
Si j'ai compris ta question tu peux essayer cette macro dans ta feuille concernée ou dans un module (mode d'emploi)
Si j'ai compris ta question tu peux essayer cette macro dans ta feuille concernée ou dans un module (mode d'emploi)
Public Sub regroupe()
Dim lig As Long
For lig = 1 To UsedRange.Rows.Count
If Cells(lig, 1) = Cells(lig + 1, 1) Then
Cells(lig, 2) = Cells(lig, 2) & Chr(10) & Cells(lig + 1, 2)
Rows(lig + 1).Delete
If Cells(lig + 1, 1) = "" Then Exit For
lig = lig - 1
End If
Next lig
End Sub
Je viens d'ajouter la macro au fichier et ca bog
voila le lien avec la modif au cas ou ca peux aider a comprendre
http://www.cijoint.fr/cjlink.php?file=cj200809/cijXOaRp7A.xls
Vraiment merci de m'aider.
voila le lien avec la modif au cas ou ca peux aider a comprendre
http://www.cijoint.fr/cjlink.php?file=cj200809/cijXOaRp7A.xls
Vraiment merci de m'aider.
bonjour
Comme tu as mis la macro dans un module, faut qualifier la feuille en modifiant cette ligne
Comme tu as mis la macro dans un module, faut qualifier la feuille en modifiant cette ligne
For lig = 1 To ActiveSheet.UsedRange.Rows.Count
Tu es absoluement génial :)
Merci beaucoup
Dis, est ce que c'est possible de modifier la macro pour que ca fonctionne si la colonne A se trouve en colonne B et la colonne B se trouve en colonne F?
C'est fou tout ce qu'on peu faire avec Excel... enfin tout ce que certains peuvent faire... c'est pas donné a tout le monde...
Merci beaucoup
Dis, est ce que c'est possible de modifier la macro pour que ca fonctionne si la colonne A se trouve en colonne B et la colonne B se trouve en colonne F?
C'est fou tout ce qu'on peu faire avec Excel... enfin tout ce que certains peuvent faire... c'est pas donné a tout le monde...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour
L'adressage que j'ai utilisé Cells(lig, 1) permet bien sûr de le faire.
le 1 est le numéro de colonne et donc si tu veux la même chose paramétré tu peux faire ainsi :
Il suffit de changer au début le numéro de colonne et cela fonctionne où tu veux.
L'adressage que j'ai utilisé Cells(lig, 1) permet bien sûr de le faire.
le 1 est le numéro de colonne et donc si tu veux la même chose paramétré tu peux faire ainsi :
Public Sub regroupe()
Dim lig As Long
Const col1 = 2 ' colonne B
Const col2 = 6 ' colonne F
For lig = 1 To ActiveSheet.UsedRange.Rows.Count
If Cells(lig, col1) = Cells(lig + 1, col1) Then
Cells(lig, col2) = Cells(lig, col2) & Chr(10) & Cells(lig + 1, col2)
Rows(lig + 1).Delete
If Cells(lig + 1, col1) = "" Then Exit For
lig = lig - 1
End If
Next lig
End Sub
Il suffit de changer au début le numéro de colonne et cela fonctionne où tu veux.