OVH Cloud OVH Cloud

consolidation

2 réponses
Avatar
ed
Bonsoir,
Je me permets de reposer ma question car depuis ce matin je cherche mais ne
trouve pas la solution ou par quel bout prendre le pb.

En réalité, j'ai deux informations dans un onglet Range("a1:a18) et Range
("b1:b18) à reporter dans un tableau d'un autre onglet de 8 colonnes ou des
chiffres sont déjà rentrés.
Et cette macro à exécuter 3x de suite dans 3 onglets différents (tjs meme
structure).
Cette macro qui m'avait bien servi.. pour récupérer les données de mes
onglets dans un tableau récapitulatif, à savoir

Sub recap()
For onglet = 1 To Sheets.Count <<<<<<< mes onglets de données
sont les trois derniers... quel code ?
If Sheets(onglet).Name <> "Un nom" Then <<<< je n'ai plus besoin d'isoler un
onglet mais plutot de bien l'identifièr comme étant le bon sachant que j'en
ai au moins 3 à identifier (msg box??)
lig = lig + 1
Sheets("Annee n").Cells(lig, 1) = Sheets(onglet).[A1]
Sheets("Annee n").Cells(lig, 8) = Sheets(onglet).[B1]
End If
Next
End Sub

qui pourrait m'aider? Au secours !
Merci d'avance
ed

2 réponses

Avatar
El pequeno
Bonjour ed.
Pour ton premier problème je te propose :
For onglet = Sheets.Count - 3 To Sheets.Count
Simple non ?
Pour le deuxieme problème je te propose ( je ne suis pas trés sur d'avoir
compris la question ):
If Sheets(onglet).Name = "Un nom" Or Sheets(onglet).Name = "Un autre nom"
Then...
ton code
Else
Exit sub peut etre ?
End sub
Sinon, pour gérer ce genre de problème il faut voir du coté des "Else if.."
ou "Select Case..." dans l'aide VBA.
Cordialement.


Bonsoir,
Je me permets de reposer ma question car depuis ce matin je cherche mais ne
trouve pas la solution ou par quel bout prendre le pb.

En réalité, j'ai deux informations dans un onglet Range("a1:a18) et Range
("b1:b18) à reporter dans un tableau d'un autre onglet de 8 colonnes ou des
chiffres sont déjà rentrés.
Et cette macro à exécuter 3x de suite dans 3 onglets différents (tjs meme
structure).
Cette macro qui m'avait bien servi.. pour récupérer les données de mes
onglets dans un tableau récapitulatif, à savoir

Sub recap()
For onglet = 1 To Sheets.Count <<<<<<< mes onglets de données
sont les trois derniers... quel code ?
If Sheets(onglet).Name <> "Un nom" Then <<<< je n'ai plus besoin d'isoler un
onglet mais plutot de bien l'identifièr comme étant le bon sachant que j'en
ai au moins 3 à identifier (msg box??)
lig = lig + 1
Sheets("Annee n").Cells(lig, 1) = Sheets(onglet).[A1]
Sheets("Annee n").Cells(lig, 8) = Sheets(onglet).[B1]
End If
Next
End Sub

qui pourrait m'aider? Au secours !
Merci d'avance
ed


Avatar
ed
Merci de ton aide.
ed


Bonjour ed.
Pour ton premier problème je te propose :
For onglet = Sheets.Count - 3 To Sheets.Count
Simple non ?
Pour le deuxieme problème je te propose ( je ne suis pas trés sur d'avoir
compris la question ):
If Sheets(onglet).Name = "Un nom" Or Sheets(onglet).Name = "Un autre nom"
Then...
ton code
Else
Exit sub peut etre ?
End sub
Sinon, pour gérer ce genre de problème il faut voir du coté des "Else if.."
ou "Select Case..." dans l'aide VBA.
Cordialement.


Bonsoir,
Je me permets de reposer ma question car depuis ce matin je cherche mais ne
trouve pas la solution ou par quel bout prendre le pb.

En réalité, j'ai deux informations dans un onglet Range("a1:a18) et Range
("b1:b18) à reporter dans un tableau d'un autre onglet de 8 colonnes ou des
chiffres sont déjà rentrés.
Et cette macro à exécuter 3x de suite dans 3 onglets différents (tjs meme
structure).
Cette macro qui m'avait bien servi.. pour récupérer les données de mes
onglets dans un tableau récapitulatif, à savoir

Sub recap()
For onglet = 1 To Sheets.Count <<<<<<< mes onglets de données
sont les trois derniers... quel code ?
If Sheets(onglet).Name <> "Un nom" Then <<<< je n'ai plus besoin d'isoler un
onglet mais plutot de bien l'identifièr comme étant le bon sachant que j'en
ai au moins 3 à identifier (msg box??)
lig = lig + 1
Sheets("Annee n").Cells(lig, 1) = Sheets(onglet).[A1]
Sheets("Annee n").Cells(lig, 8) = Sheets(onglet).[B1]
End If
Next
End Sub

qui pourrait m'aider? Au secours !
Merci d'avance
ed