Me gustaría coger los campos que tienen un valor superior a 1000 y la siguiente instrucción, aunque no falla, no hace el filtro que quiero:
Código:
La instrucción se ejecuta pero no filtra bien, cuenta todos los campos y no sólo los que son mayores que 1000.SQL = "select count([APPThroughputUp]) from [LLAMADAS$] where [APPThroughputUp] not in ('-') AND [APPThroughputUp]> CInt(1000) '"
¿Alguna idea? Los datos del excel contienen decimales y van con punto en vez de con coma... ¿creeis que puede tener algo que ver el tema de la configuración regional?
En definitiva lo que hago es que estoy volcando los datos en otro excel para hacer un informe. Lo que pretendo hacer aquí es sacar el porcentaje de muestras que tienen throughput >1000. La variable TamHTTPUL2 es igual a 10, se la paso por pantalla.
Lo intento hacer de la siguiente forma:
Código:
Aquí conecto la base de datos:SQL = "select count([StartTime]) from [LLAMADAS$] where [CallType] in ('HTTP') AND [Result] in ('Success','TimeOut') AND [APPThroughputUp] not in ('-') AND [AutoCallScenarioName] LIKE '%_" & TamHTTPUL2 & "[Mm_ ]%' AND [APPThroughputUp]> 1000" Call Execute_SQL(SQL, Workbooks("Report.xlsm").Sheets("LTE_KPIs").Cells(fila + 37, columna), path)
Código:
Seguro que es una tontería pero empieza a ser desesperante.Private Sub Execute_SQL(ByVal strSQL As String, rngPosition As Range, DPath As String) Dim Conn As New ADODB.Connection Dim mrs As New ADODB.Recordset Dim DBPath As String, sconnect As String sconnect = "Provider=MSDASQL.1;DSN=Excel Files;DBQ=" & DPath & ";HDR=Yes';" Conn.Open sconnect mrs.Open strSQL, Conn rngPosition.CopyFromRecordset mrs mrs.Close Conn.Close End Sub
Muchas gracias!!