Bonjour,

je débute en vba et doit réaliser un script me permettant de :
- créer un nouveau fichier xls
- l' ouvrir
- ouvrir un fichier csv avec excel
- récupérer des données du fichier csv afin de les copier dans le fichier xls.

Des postes similaires sont sur le forum mais aucun ne répond à mon bogue.

Voici ce que j'ai fait pour l'instant :
code :
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
 
Sub OUT_DRCOM_TO_BNC()
 
'definition variable
 
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim num_opt As String
Dim DernLigne As Long
Dim i As Integer
Dim j As Integer
 
 
'On créer l'objet Excel
 Set xlApp = CreateObject("Excel.Application")
 
'On défini le nombre d'onglets
 xlApp.SheetsInNewWorkbook = 1
 
'On ajoute un classeur
 Set xlBook = xlApp.Workbooks.Add
 
'On donne un nom au classeur
 xlBook.SaveAs ("C:\Users\jmoniot\Desktop\monfichier1.xls")
 
 'On rend le classeur visible
 xlApp.Visible = True
 
 'On créer l'objet onglet dans le nouveau classeur créé
 Set xlSheet = xlBook.Worksheets(1)
 
 'On affecte un nom a l'onglets
 xlSheet.Name = 1
 
'On remet la propriété de l'application à 3 (par défaut)
 xlApp.SheetsInNewWorkbook = 3
 
'On définit le numéro $$$ qui ne change pas
$$$ = "confid_number"
 
 
 
'Définition du titre des colonnes
xlSheet.Range("A1").Value = "Identité"
xlSheet.Range("B1").Value = "Nom"
xlSheet.Range("C1").Value = "Prénom"
xlSheet.Range("D1").Value = "CLEBDF"
xlSheet.Range("E1").Value = "Ridet"
xlSheet.Range("F1").Value = "AD1"
xlSheet.Range("G1").Value = "AD2"
xlSheet.Range("H1").Value = "AD3"
xlSheet.Range("I1").Value = "AD4"
xlSheet.Range("J1").Value = "1er compte ouvert"
xlSheet.Range("K1").Value = "2eme compte ouvert"
xlSheet.Range("L1").Value = "3eme compte ouvert"
xlSheet.Columns("A:L").ColumnWidth = 20
 
Workbooks.Open Filename:="C:\Users\jmoniot\Desktop\aaa\ZProjet\monfichier.csv", Local:=True
 
DernRow = Range("B" & Rows.Count).End(xlUp).Row
MsgBox (DernRow)
Avant_dern_row = DernRow - 1
MsgBox (Avant_dern_row)
 
'Workbooks("monfichier.csv").Sheets(1).Range ("B2:" & Cells(Rows.Count, "B").End(xlUp).Row - 1)
'Workbooks("monfichier1.xls").Sheets(1).Rows ("2:65536")
 
For i = 2 To Avant_dern_row
    Workbooks("monfichier1.xls").Sheets(1).Cells("A" & i).Value = Workbooks("monfichier.csv").Sheets(1).Cells("B" & i).Value
Next
 
End Sub
Le débogueur m'indique erreur d'exécution 5 sur cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Workbooks("monfichier1.xls").Sheets(1).Cells("A" & i).Value = Workbooks("monfichier.csv").Sheets(1).Cells("B" & i).Value
ça fait 1 jour que je bloque dessus .

Merci d'avance pour votre aide qui sera sans aucun doute, d'une aide précieuse.
Cordialement, Jordan.