Vba userform & oracle

satfilter

XLDnaute Nouveau
Bonjour,
j'ai un soucis concernant la connection a une BDD Oracle via VBA.
Voici mon code :

Code:
Private Sub CommandButton1_Click()

Dim strConnection As String
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strSQL As String
Dim Ncde As String

Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset

Ncde = TextBox1.Value
strConnection = "provider=MSDAORA;DataSource=****;User ID=****;Password=****;"

conn.ConnectionString = strConnection
conn.Open


strSQL = "select * from COMMANDES"
rs.Open strSQL, conn, 3, 3

rs.MoveFirst
While Not rs.EOF
RSWApp.WriteToLog rs("ID"), rs("CODE"), rs("NAME")
rs.MoveNext
Wend
rs.Close
conn.Close
Set conn = Nothing
Set rs = Nothing

End Sub

j'ai l'erreur ORA 12560 - erreur d'adaptateur de protocole

Merci pour votre aide !!

A+
 

mromain

XLDnaute Barbatruc
Re : Vba userform & oracle

Bonjour satfilter, le forum,

Je ne suis pas sûr que tu trouveras des réponses sur un forum Excel. Après quelques recherche, il semble que l'erreur en question est une erreur générique d'ORACLE.

Une piste ici.

Merci de nous informer tout de même si (et comment) tu as résolu ton problème :).

A+
Miki
 

satfilter

XLDnaute Nouveau
Re : Vba userform & oracle

Salut,

j'ai finalement réussi en utilisant l'enregistreur de macro.

Code:
Private Sub OK_Click()

Dim Ncde As String
Ncde = TextBox1.Value
ActiveSheet.Cells.ClearContents

    With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
        "OLEDB;Provider=MSDAORA.1;Password=****;User ID=****;Data Source=****", _
        Destination:=Range("$A$4")).QueryTable
        
        .CommandType = xlCmdSql
        .CommandText = "select  T1.""NU_CDE"" ""N° Commande"", T1.""LIG_CDE"" ""N° Ligne"", T2.""MT_ENGAGE"" ""Montant engagé"", T3.""MT_LIQ"" ""Montant liquidé"", T2.""MT_ENGAGE"" - T3.""MT_LIQ"" ""Reste engagé"", T1.""NU_LIQ"" ""Numéro de liquidation"", T2.""QTE_CDEE"" ""Quantité commandée"", T2.""QTE_RECUE"" ""Quantité reçue""" & Chr(13) & "" & Chr(10) & ",T2.""QTE_CDEE"" - T2.""QTE_RECUE"" ""Reste en commande"", T2.""LIBELLE_LIGNE_CDE"" ""Libellé lig. cde"", T1.""GEST"" ""Gestionnaire"" from (""LIG_COMMANDE"" T2 LEFT OUTER JOIN (""RECEP_CDE"" T3 LEFT OUTER JOIN ""MANDATS_DE_COMMANDES"" T1 on T3.""EH""=T1.""EH"" and T3.""GEST""=T1.""GEST"" and T3.""NU_CDE""=T1.""NU_CDE"" and T3.""LIG_CDE""=T1.""LIG_CDE"" and T3.""NU_RECEP""=T1.""NU_RECEP"" and T3.""NUM_LIQ""=T1.""NU_LIQ"") on T2.""EH""=T3.""EH"" and T2.""GEST""=T3.""GEST"" and T2.""NU_CDE""=T3.""NU_CDE"" and T2.""LIG_CDE""=T3.""LIG_CDE"")" & Chr(13) & "" & Chr(10) & " where T1.""NU_CDE""=" & Ncde & Chr(13) & "" & Chr(10) & " order by ""N° Ligne"" asc"
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = True
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
        .ListObject.DisplayName = "Tableau_IN01__Par_défaut__COMMANDE"
        .Refresh BackgroundQuery:=False
        Columns.AutoFit
    End With
    
End Sub

A+
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 094
Messages
2 085 244
Membres
102 834
dernier inscrit
nadusha