Macro sélection onglet
yien62223
-
yien62223 -
yien62223 -
Bonjour, j'aurai besoin d'aide et ne trouve pas de solution dans les divers questions déjà posées,
J'ai un fichier dans lequel j'ai déjà automatisé, via des macros, des actions.
L'une d'elle créée un nouvel onglet, copie d'un onglet "Modèle", à remplir avec des mesures du jour et renomme l'onglet avec la date du jour.
Ce que je voudrais c'est pouvoir récupérer des valeurs et les copier dans un autre onglet pour y faire un graphique de suivi mais le soucis :
Les valeurs sont par exemple en B3 B15 F10 etc mais à coller en B2 B3 B4 B6 etc..
J'ai enregistré une macro, pour la première valeur pas de soucis car je lance la macro en étant sur le bon onglet, mais pour les suivants il me prend le nom de l'onglet sauf que celui-ci va changer le lendemain.
Je ne sais pas si je m'exprime bien mais est-ce possible déjà?
Merci à tous
Cordialement
J'ai un fichier dans lequel j'ai déjà automatisé, via des macros, des actions.
L'une d'elle créée un nouvel onglet, copie d'un onglet "Modèle", à remplir avec des mesures du jour et renomme l'onglet avec la date du jour.
Ce que je voudrais c'est pouvoir récupérer des valeurs et les copier dans un autre onglet pour y faire un graphique de suivi mais le soucis :
Les valeurs sont par exemple en B3 B15 F10 etc mais à coller en B2 B3 B4 B6 etc..
J'ai enregistré une macro, pour la première valeur pas de soucis car je lance la macro en étant sur le bon onglet, mais pour les suivants il me prend le nom de l'onglet sauf que celui-ci va changer le lendemain.
Je ne sais pas si je m'exprime bien mais est-ce possible déjà?
Merci à tous
Cordialement
A voir également:
- Macro sélection onglet
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Raccourci rouvrir onglet fermé - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Excel récupérer couleur cellule sans macro ✓ - Forum Bureautique
5 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
Si tu veux contrôler dans ton code sur quel onglet tu travailles, tu peux le faire facilement, exemple:
Worksheets("Nouveau").Cells(1, 1)=Worksheets("Modèle").Cells(1, 1)ou bien
Dim ongletmodele As Worksheet Dim ongletnouveau As Worksheet Set ongletmodele = Worksheets("Modèle") Set ongletnouveau = Worksheets("Nouveau") ongletnouveau .Cells(1,1)=ongletmodele.Cells(1, 1)Cela t'aide-t-il?
Voilà la macro actuelle, mon problème est dans le nom sheets("2017-01-06") qui apparrait à partir de ma 2e recopie. :
Range("C11").Select
Selection.Copy
Sheets("Graphique").Select
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
Range("C18").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
Range("C25").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
ActiveWindow.ScrollRow = 2
ActiveWindow.ScrollRow = 3
ActiveWindow.ScrollRow = 4
ActiveWindow.ScrollRow = 5
ActiveWindow.ScrollRow = 6
ActiveWindow.ScrollRow = 7
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 13
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 19
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 22
Range("C35").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B8").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
Range("J35").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
Range("C42").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
Range("J42").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B13").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D23:G31").Select
Sheets("2017-01-06").Select
Range("C49").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B15").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
Range("J49").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B16").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("2017-01-06").Select
ActiveWindow.LargeScroll Down:=-1
Range("K10").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Graphique").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
J'ai testé cela fonctionne pour recopier valeur
par contre je dois renseigner le nom de l'onglet "Nouveau" pour ma destination "Graphique" pour moi
et le nom "Modèle" pour mon onglet du jour mais celui-ci va changer alors que la macro s'attend à l'onglet "Modèle"
par contre je dois renseigner le nom de l'onglet "Nouveau" pour ma destination "Graphique" pour moi
et le nom "Modèle" pour mon onglet du jour mais celui-ci va changer alors que la macro s'attend à l'onglet "Modèle"
Si tu utilises ceci:
Tu peux sans doute t'en sortir en utilisant Activesheet et en chipotant avec des Select, mais je te le déconseille, cela te donnera sans doute des problèmes plus tard.
Set ongletmodele = Worksheets("Modèle") Set ongletnouveau = Worksheets("Nouveau")J'ai mis les noms comme exemple simple pour te montrer comment faire. Ta macro peux librement choisir les noms des deux onglets, par exemple en les calculant, en les demandant, ou en les lisant dans une case. Exemple:
Set ongletnouveau = Worksheets(CStr(Date))
Tu peux sans doute t'en sortir en utilisant Activesheet et en chipotant avec des Select, mais je te le déconseille, cela te donnera sans doute des problèmes plus tard.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question