Problema con una macro para importar datos
Publicado por Jorge (6 intervenciones) el 10/08/2007 19:40:31
Hola amigos
Tengo el siguiente problema para importar datos por medio de una macro.
resulta que pasa como parametro un numero , me funciona todo bien extrae los datos.
pero si paso un texto se me cae la macro.
Para que puedan entender la idea.
la macro se ejecuta con lo que yo ingreso en la celda d6 que es lo mismo que param1
Sub prueba()
'
Dim param1
Sheets("Procesos").Select
param1 = Range("D6").Cells.Text
Sheets("Hoja3").Select
ActiveSheet.Unprotect
Columns("A:IV").Select
Selection.ClearContents
With ActiveSheet.QueryTables.Add(Connection:="ODBC;DSN=northwind;", _
Destination:=Sheets("Hoja3").Range("A2"))
.CommandText = "SELECT C.Customerid FROM Northwind..CUSTOMERS C WHERE C.Customerid = " & param1 & ""
.Name = "Consulta desde inti"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
End Sub
Tengo el siguiente problema para importar datos por medio de una macro.
resulta que pasa como parametro un numero , me funciona todo bien extrae los datos.
pero si paso un texto se me cae la macro.
Para que puedan entender la idea.
la macro se ejecuta con lo que yo ingreso en la celda d6 que es lo mismo que param1
Sub prueba()
'
Dim param1
Sheets("Procesos").Select
param1 = Range("D6").Cells.Text
Sheets("Hoja3").Select
ActiveSheet.Unprotect
Columns("A:IV").Select
Selection.ClearContents
With ActiveSheet.QueryTables.Add(Connection:="ODBC;DSN=northwind;", _
Destination:=Sheets("Hoja3").Range("A2"))
.CommandText = "SELECT C.Customerid FROM Northwind..CUSTOMERS C WHERE C.Customerid = " & param1 & ""
.Name = "Consulta desde inti"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
End Sub
Valora esta pregunta


0