Bonjour,
Je veux exporter des donnée de ma base de donnée oracle vers une feuille Excel
Voila mon 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
Option Explicit
Dim Xlapp As Excel.Application
Dim XlBook As Excel.Workbook
Dim XlSheet As Excel.Worksheet
 
Private Sub cmdimprimerexcel_Click()
Call ConnectDB
 
Dim Rs As Recordset
Dim NomFeuille As String
 
    On Error GoTo Err_ExporteVersExcel
 
    Set Xlapp = New Excel.Application
    'Set Xlapp = GetObject(, "Excel.Application")
    'On Error GoTo oups:
    On Error GoTo 0
    Xlapp.Visible = True
    NomFeuille = "S07"
    'NomFeuille = "S" & DatePart("ww", Date)
    Set XlBook = Xlapp.Workbooks.Open("C:\facture.xls")
 
    If FeuilleExiste(NomFeuille, XlBook.Name) Then
        Set XlSheet = XlBook.Worksheets("S07")
        ' efface les données
        XlSheet.Cells.Clear
    Else
        ' Ajouter nouvelle feuille en dernière position
        Set XlSheet = XlBook.Worksheets.Add(, XlBook.Worksheets(XlBook.Worksheets.Count))
        XlSheet.Name = NomFeuille
    End If
 
 
    ' Copie dans feuille (nouvelle ou effacée)
 
    Set Rs = New Recordset
    Rs.Open "select * from MFT_AR_FACTURE", Db, adOpenDynamic, adLockOptimistic
    XlSheet.Range("A1").CopyFromRecordset Rs
    Set XlSheet = Nothing
    ' remise au début car le 'CopyFromRecordset' ne le fait pas
    Rs.MoveFirst
    '??? une 2ième foiS ??? XlSheet.Range("A1").CopyFromRecordset Rs
    ' Ferme les Var
 
    'Rs.Close '(lancer d'un form déjà aménagé pour moi)
    Set Rs = Nothing
 
 
 
    Set XlSheet = Nothing
    ' Sauve le fichier
    XlBook.Save
    'XlBook.Close
    Set XlBook = Nothing
    Set Xlapp = Nothing
 
 
 
Err_ExporteVersExcel:
 
    'Err 429 : Un serveur OLE Automation ne peut pas créer d'objet
    ' -> Excel n'est PAS encore ouvert.
    If Err = 429 Then
        Set Xlapp = CreateObject("Excel.Application")
        Resume Next
    End If
 
oups:
    MsgBox Err.Number & " - " & Err.Description
    Resume Exit_ExporteVersExcel
 
End Sub
Mais j'ai un message d'erreur au niveau "Xlapp As Excel.Application"
le message c'est "Erreur de compilation: type défini par l'utilisateur non défini"
Est ce que vous pouvez m'aider
Merci d'avance