Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment récupérer des valeurs ligne à ligne (en boucle)

2 réponses
Avatar
G. L
Bonsoir à tous,

Pouvez vous m'aider SVP ?

J'ai une feuille (Liste) d'où je veux extraire ligne à ligne trois valeurs
et les écrire dans la feuille (enchaînement) cellules E1 F1 G1.

Exemple feuille (Liste) G29 , Z29 et AH29 qui seront copiés respectivement
en E1, F1 et G1

Ensuite sera le tour de G30 , Z30 et AH30 qui seront copiés respectivement
en E1, F1 et G1 ainsi de suite.

J'ai bricolé ceci qui marche pour une valeur, mais je bloque pour les deux
autres valeurs



Sub Selection ()


Sheets("Liste").Select

Rows("29:65536").Select

Selection.Sort Key1:=Range("AH29"), Order1:=xlAscending,
Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

ligne = Range("AH65536").End(xlUp).Row

Sheets("Enchainement").Select

Range("S1").ClearContents

Cour = 29 ' Première ligne de la liste

ValCour = 0

While (Cour < ligne)

Range("E1").Select

Test = "=IF(RC[14]="""",Liste!R[" & Cour & "]C[29],RC[14])"

ActiveCell.FormulaR1C1 = Test

Cour = Cour + 1

If (ActiveCell.Value <> ValCour) Then

ValCour = ActiveCell.Value

End If

If ValCour = "" Then

MsgBox (" La codification est terminée ! ")

Exit Sub

End If


Call CODE ' Requète écritures


Wend

End Sub



Il doit y avoir beaucoup plus simple !

Merci d'avance

Gérard

2 réponses

Avatar
MichDenis
Bonjour G. ,

Pour l'éventuel répondeur, Comment détermines-tu les lignes qui doivent être extraites ? Quels sont les critères que tu
utilises ? Sur quelle colonne ? (je parle de ta feuille contenant tes données - Liste)

Comment cette action est-elle déclenchée ? Par un bouton de commande ? Par une modification d'une cellule ? Autrement ?


Salutations !



"G. " <sugere~KillPub~@online.fr> a écrit dans le message de news: %23f5$
Bonsoir à tous,

Pouvez vous m'aider SVP ?

J'ai une feuille (Liste) d'où je veux extraire ligne à ligne trois valeurs
et les écrire dans la feuille (enchaînement) cellules E1 F1 G1.

Exemple feuille (Liste) G29 , Z29 et AH29 qui seront copiés respectivement
en E1, F1 et G1

Ensuite sera le tour de G30 , Z30 et AH30 qui seront copiés respectivement
en E1, F1 et G1 ainsi de suite.

J'ai bricolé ceci qui marche pour une valeur, mais je bloque pour les deux
autres valeurs



Sub Selection ()


Sheets("Liste").Select

Rows("29:65536").Select

Selection.Sort Key1:=Range("AH29"), Order1:=xlAscending,
Header:=xlGuess, _

OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom

ligne = Range("AH65536").End(xlUp).Row

Sheets("Enchainement").Select

Range("S1").ClearContents

Cour = 29 ' Première ligne de la liste

ValCour = 0

While (Cour < ligne)

Range("E1").Select

Test = "=IF(RC[14]="""",Liste!R[" & Cour & "]C[29],RC[14])"

ActiveCell.FormulaR1C1 = Test

Cour = Cour + 1

If (ActiveCell.Value <> ValCour) Then

ValCour = ActiveCell.Value

End If

If ValCour = "" Then

MsgBox (" La codification est terminée ! ")

Exit Sub

End If


Call CODE ' Requète écritures


Wend

End Sub



Il doit y avoir beaucoup plus simple !

Merci d'avance

Gérard
Avatar
G. L
Bonjour,

Merci de t'intéresser à mon problème, effectivement je n'ai pas été assez
explicatif.

_ Toutes les lignes de la feuille liste sont traitées.

_ C'est un bouton de commande qui va lancer la macro.

_ Entre chaque série de valeurs affichées je lance la macro "CODE" qui
active une requête SQL.

_ Les valeurs de la feuille (enchaînement) cellules E1 F1 G1 sont les
conditions (voir les clefs) qui "balisent" ma requête.



J'espère que tu pourras m'aider.

Je lis tous les jours les news depuis des années, il m'arrive quelques fois
de poser des questions, je peux affirmer haut et fort que ce groupe est
formidable

Cordialement

Gérard





"MichDenis" a écrit dans le message de
news:%
Bonjour G. ,

Pour l'éventuel répondeur, Comment détermines-tu les lignes qui doivent
être extraites ? Quels sont les critères que tu

utilises ? Sur quelle colonne ? (je parle de ta feuille contenant tes
données - Liste)


Comment cette action est-elle déclenchée ? Par un bouton de commande ? Par
une modification d'une cellule ? Autrement ?



Salutations !



"G. " <sugere~KillPub~@online.fr> a écrit dans le message de news:
%23f5$

Bonsoir à tous,

Pouvez vous m'aider SVP ?

J'ai une feuille (Liste) d'où je veux extraire ligne à ligne trois valeurs
et les écrire dans la feuille (enchaînement) cellules E1 F1 G1.

Exemple feuille (Liste) G29 , Z29 et AH29 qui seront copiés
respectivement

en E1, F1 et G1

Ensuite sera le tour de G30 , Z30 et AH30 qui seront copiés
respectivement

en E1, F1 et G1 ainsi de suite.

J'ai bricolé ceci qui marche pour une valeur, mais je bloque pour les deux
autres valeurs



Sub Selection ()


Sheets("Liste").Select

Rows("29:65536").Select

Selection.Sort Key1:=Range("AH29"), Order1:=xlAscending,
Header:=xlGuess, _

OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom

ligne = Range("AH65536").End(xlUp).Row

Sheets("Enchainement").Select

Range("S1").ClearContents

Cour = 29 ' Première ligne de la liste

ValCour = 0

While (Cour < ligne)

Range("E1").Select

Test = "=IF(RC[14]="""",Liste!R[" & Cour & "]C[29],RC[14])"

ActiveCell.FormulaR1C1 = Test

Cour = Cour + 1

If (ActiveCell.Value <> ValCour) Then

ValCour = ActiveCell.Value

End If

If ValCour = "" Then

MsgBox (" La codification est terminée ! ")

Exit Sub

End If


Call CODE ' Requète écritures


Wend

End Sub



Il doit y avoir beaucoup plus simple !

Merci d'avance

Gérard