| 12
 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
 
 |  
Sub GetDataFromADO()
    Cells.Select
    Range("b2:k65536").Select
    Selection.ClearContents
 
    'Declare variables'
        Dim objMyConn As ADODB.Connection
        Dim objMyCmd As ADODB.Command
        Dim objMyCmd2 As ADODB.Command
        Dim objMyRecordset As ADODB.Recordset
 
        Set objMyConn = New ADODB.Connection
        Set objMyCmd = New ADODB.Command
        Set objMyRecordset = New ADODB.Recordset
 
' C'est là que je ne sais pas comment syntaxer !!!!!!!
Set cmd = CreateObject("ADODB.Command")
Set cmd.CommandTimeout = 120
 
' ici la requête qui fonctionne
'Open Connection'
        objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=*****;Initial Catalogue=******;User ID=*****;Password=***;"
 
        objMyConn.Open
        Set objMyCmd.ActiveConnection = objMyConn
        objMyCmd.CommandText = "SELECT container.Container, Product.ProductNo, TT_Prod.Medium, Z_LOT_NO_CHARACTERISTIC.string02, APR_Inventory.LotNo, Container.Warehouse, APR_Inventory.Location, TT_Comment.Extended" & _
        " FROM [***].[dbo].[Inventory_Container]" & _
        " INNER JOIN [***].[dbo].[Container] ON container.container = inventory_container.container" & _
        " INNER JOIN [***].[dbo].[inventory] ON ID = Inventory_container.inventoryID " & _
        " INNER JOIN [***].[dbo].[APR_Inventory] ON APR_Inventory.InventoryId = Inventory.ID  " & _
        " INNER JOIN [***].[dbo].[LOT_NO] ON [***].[dbo].[LOT_NO].[LotNo] = APR_Inventory.LotNo" & _
        " INNER JOIN [***].[dbo].[Z_LOT_NO_CHARACTERISTIC] ON [flexnet].[dbo].[Z_LOT_NO_CHARACTERISTIC].[LotNo] = APR_Inventory.LotNo" & _
        " INNER JOIN [***].[dbo].[PRODUCT] ON PRODUCT.ID = [flexnet].[dbo].[inventory].ProductID" & _
        " INNER JOIN [***].[dbo].[TEXT_TRANSLATION] AS TT_Prod ON TT_Prod.TextID = PRODUCT.TextID AND TT_Prod.LanguageID = '1036'" & _
        " INNER JOIN [***].[dbo].[TEXT_TRANSLATION] AS TT_Comment ON TT_Comment.TextID = LOT_NO.TextID AND TT_Comment.LanguageID = '1036'" & _
        " WHERE Container.Container like '" + Worksheets("ProtectedSheet").Cells(1, 1).Value + "%'"
    'Open Recordset'
        Set objMyRecordset.Source = objMyCmd
        objMyRecordset.Open
 
    Range("B2").Select
    ActiveSheet.Range("B2").CopyFromRecordset objMyRecordset | 
Partager