A voir également:
- Macro vba exporter des colonnes selon titres
- Comment faire des colonnes sur word - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Exporter favoris chrome - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Exporter conversation sms android - Guide
7 réponses
Voilà une macro plus "logique" mais qui ne marche toujours pas
Meric encore à ceux qui voudront bien prendre le temps de se pencher sur mon problème.
Sub rassemblement()
Dim derL As Long
derL = Sheets("feuil1").[B65536].End(xlUp).Row
Dim derC As Long
derColonne = Sheets("feuil1").[B65536].End(xlUp).Column
For j = derC To 1 Step -1
For i = derL To 1 Step -1
If Feuil1.Cells(i, j) = "titre5" Then j = "Bontitre"
Next
Cells(i, 1) = Feuil1.Cells(i, Bontitre)
Next
For j = derC To 1 Step -1
For i = derL To 1 Step -1
If Feuil1.Cells(i, j) = "titre5" Then j = "Bontitre"
Next
Cells(i, 2) = Feuil1.Cells(i, Bontitre)
Next
End Sub
RomainG
Meric encore à ceux qui voudront bien prendre le temps de se pencher sur mon problème.
Sub rassemblement()
Dim derL As Long
derL = Sheets("feuil1").[B65536].End(xlUp).Row
Dim derC As Long
derColonne = Sheets("feuil1").[B65536].End(xlUp).Column
For j = derC To 1 Step -1
For i = derL To 1 Step -1
If Feuil1.Cells(i, j) = "titre5" Then j = "Bontitre"
Next
Cells(i, 1) = Feuil1.Cells(i, Bontitre)
Next
For j = derC To 1 Step -1
For i = derL To 1 Step -1
If Feuil1.Cells(i, j) = "titre5" Then j = "Bontitre"
Next
Cells(i, 2) = Feuil1.Cells(i, Bontitre)
Next
End Sub
RomainG
Bonjour,
Je n'ai pas testé le résultat, mais la syntaxe :
Cdt
Lupin
Je n'ai pas testé le résultat, mais la syntaxe :
Option Explicit Sub rassemblement() Dim derL As Long Dim derC As Long Dim j As Long, i As Long Dim Position As Long derL = Sheets("feuil1").Range("B65536").End(xlUp).Row derC = Sheets("feuil1").Range("IV1").End(xlToLeft).Column MsgBox derL & vbCrLf & derC For j = derC To 1 Step -1 For i = derL To 1 Step -1 If Feuil1.Cells(i, j) = "titre5" Then Position = j End If Next Cells(i, 1) = Feuil1.Cells(i, Position) Next For j = derC To 1 Step -1 For i = derL To 1 Step -1 If Feuil1.Cells(i, j) = "titre7" Then Position = j End If Next Cells(i, 2) = Feuil1.Cells(i, Position) Next End Sub '
Cdt
Lupin
Bonjour Lupin et merci de ton aide.
Les boucles ne se lancent pas et une boite de dialogue s'ouvre "erreur s'execution 1004. Erreur définie par l'application ou par l'objet".
Il semblerait qu'il y'ait une faute de syntaxe dans la boucle mais je ne vois pas laquelle.
Merci encore
Cdt
RomainG
Les boucles ne se lancent pas et une boite de dialogue s'ouvre "erreur s'execution 1004. Erreur définie par l'application ou par l'objet".
Il semblerait qu'il y'ait une faute de syntaxe dans la boucle mais je ne vois pas laquelle.
Merci encore
Cdt
RomainG
Bonjour,
L'erreur 1004 est une erreur de débordement.
derL = Sheets("feuil1").Range("B65536").End(xlUp).Row
derC = Sheets("feuil1").Range("IV1").End(xlToLeft).Column
MsgBox derL & vbCrLf & derC
Quels sont les deux valeurs envoyé par le MsgBox ?
Cdt
Lupin
L'erreur 1004 est une erreur de débordement.
derL = Sheets("feuil1").Range("B65536").End(xlUp).Row
derC = Sheets("feuil1").Range("IV1").End(xlToLeft).Column
MsgBox derL & vbCrLf & derC
Quels sont les deux valeurs envoyé par le MsgBox ?
Cdt
Lupin
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
re:
Ça je m'en doutais, mais les valeurs sont elles plausible ?
Tu peux suivre le déroulement de la procédure en mode pas à pas
et placer des espions sur les valeurs.
// Menu // Outils // Macro // Macro ... //
Sélectionner la macro à lancer
Cliquer sur le bouton [Pas à pas détaillé]
Clique droit sur la barre de menu, ajouter la barre de Débogage
Utiliser le 6ième icon de la barre pour avancer en mode pas à pas
Pour visualiser une variable, surligner la, clique droit dessus
Choisir [Ajouter un espion ...]
La fenêtre Espion apparait automatiquement
Avancer pas à pas, la valeur de la variable est affiché de façon
vivante ...
Cdt
Lupin
Ça je m'en doutais, mais les valeurs sont elles plausible ?
Tu peux suivre le déroulement de la procédure en mode pas à pas
et placer des espions sur les valeurs.
// Menu // Outils // Macro // Macro ... //
Sélectionner la macro à lancer
Cliquer sur le bouton [Pas à pas détaillé]
Clique droit sur la barre de menu, ajouter la barre de Débogage
Utiliser le 6ième icon de la barre pour avancer en mode pas à pas
Pour visualiser une variable, surligner la, clique droit dessus
Choisir [Ajouter un espion ...]
La fenêtre Espion apparait automatiquement
Avancer pas à pas, la valeur de la variable est affiché de façon
vivante ...
Cdt
Lupin
re:
Voilà, j'ai débogger le code :
L'erreur de débordement était du au fait d'utiliser [ i ] à la sortie
de la boucle, à ce moment [ i ] vaut 0, et l'instruction Cells(x,y)
ne supporte pas la position 0.
Cdt
Lupin
Voilà, j'ai débogger le code :
L'erreur de débordement était du au fait d'utiliser [ i ] à la sortie
de la boucle, à ce moment [ i ] vaut 0, et l'instruction Cells(x,y)
ne supporte pas la position 0.
Option Explicit Sub rassemblement() Dim derL As Long Dim derC As Long Dim j As Long, i As Long Dim Position As Long derL = Sheets("feuil1").Range("B65536").End(xlUp).Row derC = Sheets("feuil1").Range("IV1").End(xlToLeft).Column 'MsgBox derL & vbCrLf & derC For j = derC To 1 Step -1 For i = derL To 2 Step -1 If Feuil1.Cells(i, j).Value = "titre5" Then Position = j End If Next Sheets("Feuil1").Cells(i, 1).Value = Sheets("Feuil1").Cells(i, Position).Value Next For j = derC To 2 Step -1 For i = derL To 1 Step -1 If Feuil1.Cells(i, j).Value = "titre7" Then Position = j End If Next Sheets("Feuil1").Cells(i, 2).Value = Sheets("Feuil1").Cells(i, Position).Value Next End Sub '
Cdt
Lupin