Bonjour à tous,,
Je ne connais pas du tout le VBA et j'ai un programme à faire. J'ai donc suivie des tuto, les aides sur les forums etn j'en suis arrivé au programme ci-dessous.
Le but de se programme est d'ouvrir un tableau A dans lequel je vais chercher un chiffre renseigné dans une cellule. Ce chiffre est le numéro de la ligne qui me sert de reference pour aller chercher une valeur dans une cellule d'un tableau B. Une fois cette nouvelle valeur obtenu je retourne la mettre dans une autre cellule du tableau A (même ligne mais colonne différente que la première recherche d'info dans le tableau A).
Mes 2 tableaux sont dans des fichiers différents alors j'ai essayé de récupéré le nom du fichier et de la feuille du tableau A avant d'ouvrir le second fichier par la macro Excel (nommé MyFile dans mon programme).
Malheureusement la première ligne de ma boucle for, Workbooks... bug (peut-être que le reste buguera par la suite).
Auriez-vous une explication s'il vous plait? Une base de la programmation que je n'ai pas compris?
Merci d'avance pour vos réponses.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 Public Sub Transferdonnees() Dim LineRef As Integer Dim ColumnRef As Integer Dim TableauA As String Dim Tableau As String Dim CellRef As String Dim Weight As Double Dim MyFile As String TableauA = ActiveWorkbook.Name Tableau = ActiveSheet.Name MyFile = Application.GetOpenFilename(, , "Open a Bookmark A2mac1", , False) Workbooks.Open (MyFile) LineRef = 15: ColumnRef = 21 For I = 0 To 368 Workbooks(TableauA).Open Sheets(Tableau).Select CellRef = Cells(LineRef, ColumnRef).Value 'Lire la cellule de la feuille tableur(LineRef,colonne u)' Workbooks.Open (MyFile) Weight = Cells(CellRef, 13).Value 'Lire la masse dans le bookmark' Workbooks(Tableau).Activate Cells(LineRef, 6) = Weight 'Attribuer la masse au tableau' LineRef = LineRef + 1 Next End Sub
Partager