Private Sub cmdBuscar_Click()
On Error GoTo ManejoDeError
msgResultado.Enabled = True
Dim strSQL As String
strSQL = "SELECT * FROM DatColegio WHERE "
Select Case cboBuscar.Text
Case "IDPrimary" '* IDPrimary = strSQL = strSQL &
"IDPrimary LIKE '*" & txtBuscar.Text & "'"
Case "IDSecundary"
strSQL = strSQL & "IDSecundary LIKE '*" & txtBuscar.Text & "*'"
Case "Nombre"
strSQL = strSQL & "Nombre LIKE '*" & txtBuscar.Text & "*'"
Case "Dirección1"
strSQL = strSQL & "Dirección1 LIKE '*" & txtBuscar.Text & "'"
Case "Dirección2"
strSQL = strSQL & "Dirección2 LIKE '*" & txtBuscar.Text & "'"
Case "Ciudad"
strSQL = strSQL & "Ciudad LIKE '*" & txtBuscar.Text & "'"
Case "CP"
strSQL = strSQL & "CP='" & txtBuscar.Text & "'"
Case "Provincia"
strSQL = strSQL & "Provincia LIKE '*" & txtBuscar.Text & "'"
End Select
datOrigen.RecordSource = strSQL
Call AjustarColumnas
Exit Sub
ManejoDeError:
Select Case Err.Number
Case 30009
MsgBox "No existe ningún campo con ese valor!",
vbApplicationModal + vbOKOnly + vbCritical, "Mensaje del sistema"
msgResultado.Enabled = False
Case Else
MsgBox "Error: " & Err.Number & " " & Err.Description
End Select
End Sub
Desde ya muchisimas gracias.
Gonzalo García
a.. Intent� establecer un �ndice de matriz de propiedades a un valor fuera
de su intervalo permisible.
Cambie el valor del �ndice de la matriz de propiedades a un valor v�lido.
Por ejemplo, el valor de �ndice de la propiedad List para un ListBox debe
estar entre 0 y 32.766.
-------------------------------------
De algun modo estas indicando algun .col o .row del flexgrid mas alla de l
rango que tienes
ejemplo:
flexgrid.cols = 5
cuando asignas a col del flexgrid un numero mayor
flexgrid.col = 7
te salta el error.
Revisa tu codigo
"Gonzalo Garc�a" <Gonzal...@discussions.microsoft.com> escribi� en el
mensaje news:8921DE08-01D6-44CA...@microsoft.com...
> Buenas gente, aca devuelta con problemas con mi base de datos. Me parece
> que
> para la proxima me cambio a ADO definitivamente y .net. Les comento, a ver
> si
> alguien tiene idea;
> estoy consultando una base de datos atraves de un FLexGrid. Y el problema
> que tengo es que cuando consulto aparentemente un registro que no existe
> me
> salta este error "Error: 381 El sub�ndice est� fuera del intervalo".
> Tranquilamente podria poner un ManejadorDeErrores y mandar un mensaje al
> usuario del tipo "El registro no existe", pero mi duda est� en que yo
> tengo
> entendido que cuando no encuentra el registro salta el error "Error: 30009
> valor de fila no v�lido", y NO el 381. Tambi�m me sucede que me salta el
> error con registros que s� existen. En fin, les agradeceria si me dan una
> mano. Aca les mando un poco de codigo;
>
> Private Sub cmdBuscar_Click()
>
> On Error GoTo ManejoDeError
>
>
> msgResultado.Enabled = True
>
> Dim strSQL As String
>
>
>
> strSQL = "SELECT * FROM DatColegio WHERE "
>
> Select Case cboBuscar.Text
>
> Case "IDPrimary" '* IDPrimary = strSQL = strSQL &
> "IDPrimary LIKE '*" & txtBuscar.Text & "'"
> Case "IDSecundary"
> strSQL = strSQL & "IDSecundary LIKE '*" & txtBuscar.Text & "*'"
> Case "Nombre"
> strSQL = strSQL & "Nombre LIKE '*" & txtBuscar.Text & "*'"
> Case "Direcci�n1"
> strSQL = strSQL & "Direcci�n1 LIKE '*" & txtBuscar.Text & "'"
> Case "Direcci�n2"
> strSQL = strSQL & "Direcci�n2 LIKE '*" & txtBuscar.Text & "'"
> Case "Ciudad"
> strSQL = strSQL & "Ciudad LIKE '*" & txtBuscar.Text & "'"
> Case "CP"
> strSQL = strSQL & "CP='" & txtBuscar.Text & "'"
> Case "Provincia"
> strSQL = strSQL & "Provincia LIKE '*" & txtBuscar.Text & "'"
> End Select
>
> datOrigen.RecordSource = strSQL
>
>
> Call AjustarColumnas
>
> Exit Sub
>
> ManejoDeError:
>
> Select Case Err.Number
>
>
> Case 30009
> MsgBox "No existe ning�n campo con ese valor!",
> vbApplicationModal + vbOKOnly + vbCritical, "Mensaje del sistema"
> msgResultado.Enabled = False
> Case Else
> MsgBox "Error: " & Err.Number & " " & Err.Description
>
> End Select
>
>
> End Sub
>
>
> Desde ya muchisimas gracias.
>
> Gonzalo Garc�a