¿De todos modos para que ADO lea datos actualizados de un archivo de Excel de solo lectura antes de guardar? (VBA)
Estoy usando el siguiente código para leer datos de la Hoja1 de la MISMA hoja de Excel. Cargo los datos en la matriz de retorno. El archivo de hoja de Excel tiene "solo lectura" marcado y siempre se abre en modo "LECTURA SOLO".
El problema es que si cambio alguno de los datos en Sheet1, porque el archivo se abre como "solo lectura", no se reflejará en la consulta ADO. ADO continúa generando lo que está en el archivo "guardado" e ignora lo que se ha actualizado en la versión temporal de solo lectura. Por ejemplo, el siguiente extrae el valor "Col5: 6" de la celda "E6". Si reemplazo el valor para que sea "prueba", ADO aún genera "Col5: 6"
¿Cómo puedo hacer que ADO lea los datos actuales en Sheet1 sin tener que "guardar como"?
Sub sbADO()
Dim sSQLSting As String
Dim Conn As New ADODB.Connection
Dim mrs As New ADODB.Recordset
Dim DBPath As String, sconnect As String
Dim returnArray
DBPath = ThisWorkbook.FullName
sconnect = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & DBPath _
& ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";"
Conn.Open sconnect
sSQLSting = "SELECT * From [Sheet1$] "
mrs.Open sSQLSting, Conn
returnArray = mrs.GetRows
mrs.Close
Conn.Close
Debug.Print returnArray(4, 4) '>> "Col5:6"
End Sub