hola a todos debe ser un poco extraña mi pregunta pero quiero explicarles a ver si me entienden, resulta que quiero saber si se puede declarar una variable que sea de tipo campo ¿que se preguntaran ustedes?, bueno resulta que estoy hacendo una busqueda y tengo un combo box en cual si tu selecionas buscar por nombre esta variable tome el campo "nombre" de la tabla, se puede hacer esto?, no se si pueda hacer trate de hacerlo tipo field y no me resulta, quizas me puedan dar una mano, a ver les dejo el code para que lo vean.
Option Explicit
Public var As Field
Private Sub Command1_Click()
Buscar
End Sub
Private Sub Form_Load()
Dim base As Database
Dim rst_base As Recordset
Dim rst_paterno As Recordset
Dim deptos As Recordset
Dim maestra As Recordset
Dim Archivo As String
Dim Nro As Double
Dim msg As String
Dim ruta As String
Archivo = App.Path & "\rutabasesoporte.TXT"
If Dir(Archivo, vbArchive) = "" Then
MsgBox "No existe archivo de configuracion de RUTA", vbInformation, "Advertencia"
Else
Nro = FreeFile
Open Archivo For Input As #Nro
Input #Nro, ruta
'Close (Linea)
End If
Call limpiar
Set base = OpenDatabase(ruta)
Set rst_base = base.OpenRecordset("select [folio_atencion] from maestro_atenciones order by folio_atencion;", dbOpenDynaset, dbConsistent, dbOptimistic)
rst_base.MoveNext
rst_base.MoveFirst
Set rst_paterno = base.OpenRecordset("select * from maestro_atenciones;", dbOpenDynaset, dbConsistent, dbOptimistic)
If rst_paterno.RecordCount > 0 Then
rst_paterno.MoveNext
rst_paterno.MoveFirst
End If
Combo1.AddItem "USUARIO"
Combo1.AddItem "DIRECCION / DEPTO"
Combo1.AddItem "TELEFONO"
Combo1.AddItem "ANEXO"
Combo1.AddItem "PROBLEMA REPORTADO"
Combo1.AddItem "ESTADO ATENCION"
Combo1.AddItem "FOLIO DE ATENCION"
End Sub
Sub INICIARGRILLA()
With hfgGrillaP
.ColWidth(0) = 2000: .TextMatrix(0, 0) = "FOLIO DE ATENCION"
.ColWidth(1) = 2000: .TextMatrix(0, 1) = "NOMBRE DE USUARIO"
.ColWidth(2) = 2000: .TextMatrix(0, 2) = "DIRECCION / DEPTO"
.ColWidth(3) = 2000: .TextMatrix(0, 3) = "PROBLEMA REPORTADO"
.ColWidth(4) = 2000: .TextMatrix(0, 4) = "TECNICO ASIGNADO"
.ColWidth(5) = 2000: .TextMatrix(0, 5) = "ESTADO ATENCION"
.ColAlignmentFixed = 3
.ColAlignment(0) = 0
.ColAlignment(1) = 0
.ColAlignment(2) = 0
.ColAlignment(3) = 0
.ColAlignment(4) = 0
.ColAlignment(5) = 0
End With
End Sub
Sub Buscar()
Dim cont As Long
Dim hhhh As Integer
Dim rst_base As Recordset
Dim base As Database
Dim rst_paterno As Recordset
Dim maestra As Recordset
Dim totalpc As Integer
Dim porcentaje As Integer
Dim total As Integer
Dim Archivo As String
Dim Nro As Double
Dim msg As String
Dim ruta As String
Archivo = App.Path & "\rutabasesoporte.TXT"
If Dir(Archivo, vbArchive) = "" Then
MsgBox "No existe archivo de configuracion de RUTA", vbInformation, "Advertencia"
Else
Nro = FreeFile
Open Archivo For Input As #Nro
Input #Nro, ruta
'Close (Linea)
End If
hfgGrillaP.Clear
INICIARGRILLA
Set base = OpenDatabase(ruta)
If Combo1.Text = "USUARIO" Then
var = rst_base("usuario_atencion") 'aqui es donde quiero que la variable var obtenga el valor de usuario atencion incluyendo el contenido
End If
Set rst_paterno = base.OpenRecordset("select * from MAESTRO_ATENCIONES where var like '*" & Trim(Text1) & "*'order by [FOLIO_ATENCION]") 'text1 contine lo que voy a buscar
With rst_paterno
If .RecordCount > 0 Then
.MoveLast
.MoveFirst
hhhh = .RecordCount
hfgGrillaP.Rows = .RecordCount + 1
For cont = 1 To .RecordCount
hfgGrillaP.TextMatrix(cont, 0) = "" & ![folio_atencion]
hfgGrillaP.TextMatrix(cont, 1) = "" & ![USUARIO_ATENCION]
hfgGrillaP.TextMatrix(cont, 2) = "" & ![DIRECCION_DEPTO]
hfgGrillaP.TextMatrix(cont, 3) = "" & ![PROBLEMA_DESCRITO]
hfgGrillaP.TextMatrix(cont, 4) = "" & ![TECNICO_ASIGNADO]
hfgGrillaP.TextMatrix(cont, 5) = "" & ![ESTADO_ATENCION]
.MoveNext
Next
Else
MsgBox "NO HAY DATOS", vbOKOnly, "ATENCION"
End If
End With
End Sub
Private Sub hfgGrillaP_DblClick()
Dim pasar As String
pasar = Format(hfgGrillaP.TextMatrix(hfgGrillaP.Row, 0), "")
End Sub
bueno espero que me puedan ayudar muchas gracias adios.