Bonjour,
Je suis étudiant, en Finance. Dans le cadre de mon master il y a une introduction au VBA.
Nous devons créer un programme qui met en forme plusieurs feuilles de données.
Malheureusement, malgré quelques recherches, je continue d'avoir l'erreur "Erreur définie l'application ou par l'objet".
Voici mon code actuel :
Savez vous d'où cela vient ? Je vous remercie.
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 Worksheets("Data").Select Dim derniere_ligne As Integer derniere_ligne = Range("A1").End(xlDown).Row 'Dernière ligne de la base de données Dim i As Integer Dim NoCol As Integer NoCol = 1 'lecture de la colonne 1 Dim NoLig As Long Dim Var As Variant Dim mySheetName As String Dim mySheetNameTest As String For i = 0 To derniere_ligne - 2 Step 1 'Si la valeur de la cellule est différente de la cellule du dessus If Cells(i, 1).Value <> Cells(i - 1, 1).Value Then 'On enregistre la key Dim KeyData As Integer KeyData = Range("A" & i).Value Sheets("Currencies").Select 'On selectionne la première colonne Range("A1", Range("A1").End(xlDown)).Select 'On parcourt les cellules de la colone pour trouver cellule avec même valeur Dim Cel As Range For Each Cel In Range("A1", Range("A1").End(xlDown)) 'Si la cellule de la colonne = KeyData on créer une feuille avec le nom le la cellule de droite. If Cel = KeyData Then mySheetName = Sheets("Currencies").Range("B" & i) On Error Resume Next mySheetNameTest = Worksheets(mySheetName).Name If Err.Number = 0 Then MsgBox "The sheet named ''" & mySheetName & "'' DOES exist in this workbook." Else Err.Clear Worksheets.Add.Name = mySheetName MsgBox "The sheet named ''" & mySheetName & "'' did not exist in this workbook but it has been created now." Sheets(mySheetName).Range("A1").Value = "FullDateAlternatekey" Sheets(mySheetName).Range("B1").Value = "AverageRate" Sheets(mySheetName).Range("C1").Value = "EndOfDayRate" Sheets(mySheetName).Range("D1").Value = "Variation since the previous quotation" Sheets(mySheetName).Range("E1").Value = "Day of the week" End If End If Next Cel End If Next i
Partager