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!!
 

