Bonjour,
Je sollicite votre aide, car je n'arrive pas à faire fonctionner ma macro. Alors je cherche a copier et coller mes valeurs dans une feuille précise à un endroit précis dans mon classeur. C'est-à-dire que dans ma première cellule "A1" de la feuille Valeur Brute je sélectionne ma feuille. Et dans la cellule "R3" je sélectionne le tableau dans lequel je souhaite coller mes données. (Plus précisément je sélectionne mon immersion dans la cellule Q3, ce qui correspond à un numéro de tableau qui se trouve en "R3".
Ainsi pour que ma macro fonctionne il faut que je sélectionne ma feuille puis le tableau dans lequel je souhaite insérer mes données.
Je me retrouve donc avec une macro comprenant 2 conditions.
De ce fait, j'ai décidé d'utiliser le fonction Case afin de ne pas avoir trop de ligne de code et éviter tout bug.
Je tiens à préciser que la macro que j'ai joint a la discussion est seulement valable quand le tableau sélectionné est 1. Je comptais faire de même dans le cas de Tableau= 2, 3, 4,...etc mais du coup cela ne fonctionne pas.
Pourtant les noms des feuilles sont corrects et quand j'exécute ma macro je n'ai pas de message qui dit que quelque chose ne vas pas. Concrètement il ne se passe rien lorsque j'exécute ma macro.
Du coup, si vous pouviez m'aider car cela fait littéralement 3 jours que j'essaye de trouver une solution à ce problème.
Je vous remercie d'avance.
Je sollicite votre aide, car je n'arrive pas à faire fonctionner ma macro. Alors je cherche a copier et coller mes valeurs dans une feuille précise à un endroit précis dans mon classeur. C'est-à-dire que dans ma première cellule "A1" de la feuille Valeur Brute je sélectionne ma feuille. Et dans la cellule "R3" je sélectionne le tableau dans lequel je souhaite coller mes données. (Plus précisément je sélectionne mon immersion dans la cellule Q3, ce qui correspond à un numéro de tableau qui se trouve en "R3".
Ainsi pour que ma macro fonctionne il faut que je sélectionne ma feuille puis le tableau dans lequel je souhaite insérer mes données.
Je me retrouve donc avec une macro comprenant 2 conditions.
De ce fait, j'ai décidé d'utiliser le fonction Case afin de ne pas avoir trop de ligne de code et éviter tout bug.
Je tiens à préciser que la macro que j'ai joint a la discussion est seulement valable quand le tableau sélectionné est 1. Je comptais faire de même dans le cas de Tableau= 2, 3, 4,...etc mais du coup cela ne fonctionne pas.
Pourtant les noms des feuilles sont corrects et quand j'exécute ma macro je n'ai pas de message qui dit que quelque chose ne vas pas. Concrètement il ne se passe rien lorsque j'exécute ma macro.
Du coup, si vous pouviez m'aider car cela fait littéralement 3 jours que j'essaye de trouver une solution à ce problème.
Je vous remercie d'avance.
VB:
Sub TEST_COPIER_COLLER()
'
' Macro permettant de copier et de coller des données dans différentes feuilles à des endroits précis
'
'Les feuilles (Palier axiale, Palier axiale-1, ...) sont identiques c'est pour ça que les cordonnées sont identiques
'Cette maccro est un exemple dans le cas ou Tableauau = 1
Dim x As Worksheet
Dim Choix As String 'La cellule Choix contient une liste déroulante contenant les différentes feuilles
Dim Tableau As String 'La cellule Tableau indique la position ou coller les valeurs. (1,2,3,4,5 et 6) Chaques nombres correcpond à des position précise dans la feuille.
Choix = Sheets("Valeur BRUT").Range("A1").Value
Tableau = Sheets("Valeur BRUT").Range("R3").Value
Select Case Choix
Case Tableau
Case (Choix = "Palier axiale") And (Tableau = 1)
With Sheets("Palier axiale")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case (Choix = "Palier axiale-1") And (Tableau = 1)
With Sheets("Palier axiale-1")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case (Choix = "Palier axiale-2") And (Tableau = 1)
With Sheets("Palier axiale-2")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case (Choix = "Palier axiale-3") And (Tableau = 1)
With Sheets("Palier axiale-3")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case (Choix = "Palier axiale-4") And (Tableau = 1)
With Sheets("Palier axiale-4")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case (Choix = "Palier axiale-5") And (Tableau = 1)
With Sheets("Palier axiale-5")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case (Choix = "Palier axiale-6") And (Tableau = 1)
With Sheets("Palier axiale-6")
.Range("C3:C63").Value = Sheets("Valeur BRUT").Range("A4:A64").Value
.Range("D3:E63").Value = Sheets("Valeur BRUT").Range("C4:D64").Value
End With
Case Else
MsgBox ("Attention il y a une erreur!")
End Select
Sheets("Valeur BRUT").Range("I7").Value = ""
End Sub