Bonjour le forum,
Je viens de créer un formulaire nommé UserFormTicket. Ce formulaire utilise un fichier excel dans lequel j'ai des valeurs dans une seule colonne (colonne A).
Je veux lire la dernière ligne de ma colonne et le déposer dans un textbox. Malheureusement à chaque "nouvelle" exécution lors du 1er lancement il ne me ressort aucune valeur, à partir de la deuxième exécution aucun problème. Et je ne vois pas d'où vient mon erreur. Si quelqu'un peut me renseigner....
Ci dessous mon code :
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
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 Sub generer_ticket() Dim oApp As Object 'permet d'instancier un fichier excel Dim workbookExcel As Object 'permet d'instancier un classeur excel Dim sheetExcel As Object 'permet d'instancier une feuille excel Dim cheminExcel As String Dim i As Integer Dim dernierTicket As String Dim nouveauTicket As String cheminExcel = "C:\Test\numeroTicket.xls" '============================================ '===== INSTANCIATION DES OBJETS EXCEL ======= '===== + OUVERTURE DU FICHIER EXCEL ======= '============================================ Set oApp = CreateObject("Excel.Application") oApp.Visible = False 'mettre la valeur a true Set workbookExcel = oApp.workbooks.Open(Path & cheminExcel) Set sheetExcel = workbookExcel.Sheets("Feuil1") debut: i = 1 Do While sheetExcel.Range("A" & i).Value <> "" dernierTicket = sheetExcel.Range("A" & i).Value i = i + 1 Loop ' If dernierTicket = "" Then ' GoTo debut ' End If nouveauTicket = Right(Left(dernierTicket, 13), 4) If nouveauTicket = 9999 Then nouveauTicket = Left(dernierTicket, 9) & "0001" Else nouveauTicket = nouveauTicket + 1 If Len(nouveauTicket) < 4 Then nouveauTicket = "0" & nouveauTicket Do While Len(nouveauTicket) < 4 nouveauTicket = "0" & nouveauTicket Loop End If nouveauTicket = Left(dernierTicket, 9) & nouveauTicket End If UserFormTicket.Show UserFormTicket.TxtNumeroTicket = nouveauTicket UserFormTicket.CbxAgent.AddItem "", 0 UserFormTicket.CbxAgent.AddItem "CLE", 1 UserFormTicket.CbxAgent.AddItem "GDU", 2 UserFormTicket.CbxAgent.AddItem "MJU", 3 UserFormTicket.CbxAgent.AddItem "PDE", 4 UserFormTicket.CbxAgent.AddItem "PKI", 5 oApp.workbooks.Close End Sub
Partager