• Initiateur de la discussion Initiateur de la discussion smailezmoi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

smailezmoi

Guest
Bonjour,
J'ai trouvé une macro sur votre site ki me semblai pa mal mai elle ne fonctionne pas

Dim Sin As Variant
Dim reg As Variant



'1) Se positionne dans la feuil source des informations et donner la valeur aux variables pour compraison

Feuil2.Select
Sin = Range("A1").Value


2)'se positionne a l'endroit du debut de la procédure et verifier s'il y a des donnes, si-non sortir de la procédure

Feuil2.Select
Range("A2").Select

If ActiveCell.Value = "" Then Exit Sub

End If

'3)Si ces différents de vide, on procède, dans ce cas on compare les donnes a une variable pour définir si oui ou non on copie l'information

Do While ActiveCell.Value <> ""

If ActiveCell.Value = Sin Then

ActiveCell.Offset(0, 1).Select

reg = ActiveCell.Value

4) 'se positionne dans la feuil ou nous voulons copier les donner, j'utilise souvent la fonction xldown suivi d'un deplacement vers le bas pour trouver la premiere cellule vide, ensuite je donne la valeur a la cellule

Feuil2.Select

Range("G1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select

ActiveCell.Value = reg

Else

ActiveCell.Offset(0, 1).Select

End If

Loop

End Sub
Il me dit au niveau du 2) : erreur de compilation end if sans bloc If?? pour moi c du chinois mai si vous avez la solution aideeeezzzzz mmmooiiii 😱
merci
 
Dernière modification par un modérateur:
Re : SOS macro boucle

Bonjour,
J'ai trouvé une macro sur votre site ki me semblai pa mal mai elle ne fonctionne pas

Dim Sin As Variant
Dim reg As Variant



'1) Se positionne dans la feuil source des informations et donner la valeur aux variables pour compraison

Feuil2.Select
Sin = Range("A1").Value


2)'se positionne a l'endroit du debut de la procédure et verifier s'il y a des donnes, si-non sortir de la procédure

Feuil2.Select
Range("A2").Select

If ActiveCell.Value = "" Then Exit Sub

End If

'3)Si ces différents de vide, on procède, dans ce cas on compare les donnes a une variable pour définir si oui ou non on copie l'information

Do While ActiveCell.Value <> ""

If ActiveCell.Value = Sin Then

ActiveCell.Offset(0, 1).Select

reg = ActiveCell.Value

4) 'se positionne dans la feuil ou nous voulons copier les donner, j'utilise souvent la fonction xldown suivi d'un deplacement vers le bas pour trouver la premiere cellule vide, ensuite je donne la valeur a la cellule

Feuil2.Select

Range("G1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select

ActiveCell.Value = reg

Else

ActiveCell.Offset(0, 1).Select

End If

Loop

End Sub
Il me dit au niveau du 2) : erreur de compilation end if sans bloc If?? pour moi c du chinois mai si vous avez la solution aideeeezzzzz mmmooiiii 😱
merci

bonjour smailezmoi,

essaye en supprimant la ligne en rouge.

a+
 
Re : SOS macro boucle

Bonjour le fil, bonjour le forum,

Même réponse que Romain. Soit tu supprimes soit tu mets à la ligne
Code:
If ActiveCell.Value = "" Then
    Exit Sub
End If

Ci-dessous ton code simplifié :
Code:
Sub Macro2()
Dim Sin As Variant 'décáre la variable Sin
Dim cel As Range 'déclare la variable cel
 
Sheets("Feuil2").Activate 'active l'onglet "Feuil2"
Sin = Range("A1").Value 'définit la variable Sin
For Each cel In Range("A2:A" & .Range("A65536").End(xlUp).Row) 'boucle sur toutes les cellules éditées cel de la colonne A (en partant de A2)
    If cel.Value = "" Then 'condition 1 : si la cellule est vide
        Exit Sub 'sort de la procédure
    Else 'sinon
        'si la valeur de la cellule est égale à la variable Sin, copie la cellule à droite dans la colonne G
        If cel.Value = Sin Then Range("G65536").End(xlUp).Offset(1, 0) = cel.Offset(0, 1).Value
    End If 'fin de la condition 1
Next cel 'prochaine cellule cel de la boucle
End Sub
 
Re : SOS macro boucle

j'ai une autre petite question comment je fai pour pouvoir transposer les cellules à copier (sur la mem macro)
Je vai etre un peu plus claire je souhaiterais a partir de la macro corrigé de Robert pouvoir copier toute les données de la ligne dans laquelle se trouve mon mot clé et la transposer en colonne dans une autre feuille
merci de votre aide
 
Dernière modification par un modérateur:
Re : SOS macro boucle

Jvai préciser un peu plus
dans ma base il peut y avoir plusieurs lignes avec le meme mot clés et c'est pour ca ke dans le format fiche je prévoir plusieurs fiche
l'ideal serait de copier toutes les infos de la ligne en kestion sur mon autre onglet

je précise que mon mot clé sera une concaténation de chiffre et de lettre (je ne sais pa si ca importe pour la construction)

merci d'avance et désolé pour la double discussions!
 
Dernière modification par un modérateur:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
401
Réponses
15
Affichages
818
Retour