¿Cómo usar VB para implementar Excel: sin abrir la hoja de trabajo, especifique el nombre del archivo y el nombre de la hoja de trabajo de acuerdo con la celda y haga referencia a los datos en el archivo correspondiente en la ruta especificada?
Subtest()
Atenuar cnn como objeto
Atenuar strPath, strTable, strSQL, Z como cadena, ss$, shtName como cadena
Desenfoque x%, i%
Establecer cnn = CreateObject("ADODB.Connection")
X = [xfd1]. final (xltolft). "columna" obtiene el número de columna correspondiente a la celda más a la derecha de la primera fila y calcula la cantidad de libros que se obtendrán.
Fila("2:25"). Borre los datos antiguos del almacén de datos.
Para i = 1 a x
z = Dir(" D:\DATA \DATA " & "\*.xlsx")
Cree Connect y extraer datos.
ss = celda(1,I). Valor y valor. ".xlsx "
Hacer mientras Z & lt& gt""
Si Z = ss, entonces
strPath = " D:\ DATA \ DATA " & amplificador " \ " & ampZ
cnn. Abra "provider=Microsoft.ACE.oledb.12.0;Extended Properties='Excel 12.0;hdr=No;imex=1';DataSource=" & ampstrPath
Establezca rst=cnn. Arquitectura abierta(20)
Shtname = rst.fields ("TABLE_name"). Valor 'Obtiene el nombre de la tabla de registros del tipo de tabla.
strTable = "[" & shtName & " A1:A18]"
strSQL = " select f 1 from " & Obtenga los datos en la primera columna de la tabla.
Celda(3,I). CopyFromRecordset de cnn. Ejecutar (strSQL)
Celdas (2, I) = left (shtname, len (shtname)-1)'Elimine el signo $ en el nombre de la tabla.
cnn. Cerrar
Terminará si...
Z = dirección
Anillo
Siguiente I
establecer arriba cnn = Ninguno
Conector final