Hi savers,
I want to connect my macro to an oracle database then execute query in macro.
This is the import vba that I record:
Sub Macro1()
'
' Macro1 Macro
' download schema
'
'
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array(Array( _
"ODBC;DSN=XXXX;UID=XXXXX;;DBQ=XXXXX;DBA=W;APA=T;EXC=F;FEN=T;QTO=F;FRC=10;FDL=10;LOB=T;RST=T;BTD=F;BNF=F;BAM=IfAllSuccessful;NUM" _
), Array("=NLS;DPM=F;MTS=T;MDI=F;CSR=F;FWC=F;FBS=64000;TLO=O;MLD=0;ODA=F;")), _
Destination:=Range("$A$1")).QueryTable
.CommandText = Array("SELECT * FROM ""DATABASE"".""SCHEMA""")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.SourceConnectionFile = _
"C:\Users\SLI2016\Documents\My Data Sources\(Default) CFD_STANLEY_TEST.odc"
.ListObject.DisplayName = "Table_Default__CFD_STANLEY_TEST"
.Refresh BackgroundQuery:=False
End With
Range("A10").Select
End Sub
How to build the connection so I can do insert, update statement back to the database?
Thank you all!
Stanley
I want to connect my macro to an oracle database then execute query in macro.
This is the import vba that I record:
Sub Macro1()
'
' Macro1 Macro
' download schema
'
'
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array(Array( _
"ODBC;DSN=XXXX;UID=XXXXX;;DBQ=XXXXX;DBA=W;APA=T;EXC=F;FEN=T;QTO=F;FRC=10;FDL=10;LOB=T;RST=T;BTD=F;BNF=F;BAM=IfAllSuccessful;NUM" _
), Array("=NLS;DPM=F;MTS=T;MDI=F;CSR=F;FWC=F;FBS=64000;TLO=O;MLD=0;ODA=F;")), _
Destination:=Range("$A$1")).QueryTable
.CommandText = Array("SELECT * FROM ""DATABASE"".""SCHEMA""")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.SourceConnectionFile = _
"C:\Users\SLI2016\Documents\My Data Sources\(Default) CFD_STANLEY_TEST.odc"
.ListObject.DisplayName = "Table_Default__CFD_STANLEY_TEST"
.Refresh BackgroundQuery:=False
End With
Range("A10").Select
End Sub
How to build the connection so I can do insert, update statement back to the database?
Thank you all!
Stanley