Hola amigos
Estoy realizando un programa de sueldos y me encuentro con el siguiente dilema que no he podido resolver
Al cargar el frmempleados selecciono en un cmbox un convenio determinado Tabla Convenios, hasta ahi todo bien, pero necesito que de acuerdo al convenio me abra las distintas tablas de categorias.
Ejemplo
Si el convenio es SMATA, que me abra y me traiga el campo funcion de la tabla SMATA.
Tengo en el modulo de clase unas funciones que me llenan los combos correspondientes y otras que me validan los ingresos y que me buscan en el combo, estas funciones funcionan jajaja
les mando lo que estoy tratando de hacer, pero que no me funciona
Private Sub cmbconvenio_KeyDown(KeyCode As Integer, Shift As Integer)
'sale de tabla Convenios
If KeyCode = vbKeyF1 Then FrmConvenios.Show 1
End Sub

Private Sub cmbconvenio_KeyPress(KeyAscii As Integer)
'sale de tabla Convenios
ValidarIngreso1 cmbconvenio, KeyAscii
End Sub

Private Sub cmbconvenio_LostFocus()
'sale de tabla Convenios
BuscarEnCombito cmbconvenio
Private Sub cmbcategoria_KeyDown(KeyCide As Integer, Shift As Integer)
If KeyCode = vbKeyF1 Then
If cmbconvenio.Text = "SMATA" Then frmsmata.Show 1
If cmbconvenio.Text = "UOM" Then frmuomra.Show 1
If cmbconvenio.Text = "UOCRA" Then frmuocra.Show 1
If cmbconvenio.Text = "FC" Then frmfc.Show 1
If cmbconvenio.Text = "CEC" Then frmcec.Show 1
If cmbconvenio.Text = "FEHGRA" Then frmfehgra.Sow 1
End If
End Sub

Private Sub cmbcategoria_KeyPress(KeyAscii As Integer)
'categoria
ValidarIngreso1 cmbcategoria, KeyAscii
End Sub

Private Sub cmbcategoria_LostFocus()
'categoria
BuscarEnCombito cmbcategoria
End Sub

Private Sub CmdGuardar_Click()
On Error Resume Next
If Trim(txtnombres) = "" Then
MsgBox "Ingrese Nombres...!", vbExclamation
Exit Sub
End If
If Trim(txtapellidos) = "" Then
MsgBox "Ingrese Apellido...!", vbExclamation
Exit Sub
End If
If Trim(txtestadocivil) = "" Then
MsgBox "Ingrese Estado Civil...!", vbExclamation
Exit Sub
End If
If Trim(txtcuil) = "" Then
MsgBox "Ingrese CUIL...!", vbExclamation
Exit Sub
End If
If Trim(txtndoc) = "" Then
MsgBox "Ingrese DNI...!", vbExclamation
Exit Sub
End If
If Trim(cmbconvenio) = "" Then
MsgBox "Ingrese Convenio...!", vbExclamation
Exit Sub
End If
If Trim(txtfuncion) = "" Then
MsgBox "Ingrese Funcion...!", vbExclamation
Exit Sub
End If
If Trim(cmbobrasocial) = "" Then
MsgBox "Ingrese Obra Social...!", vbExclamation
Exit Sub
End If
Dim T As New ADODB.Recordset

If NUEVO = True Then
T.Open "SELECT COUNT(*) FROM PERSONAL WHERE [CodigoDueño]='" + txtcodigo + "'", cn, adOpenForwardOnly, adLockReadOnly
REFRESCAR T
If T.RecordCount > 0 Then
txtcodigo = Left(txtcodigo, 3) + Format(Val(Right(txtcodigo, 3)) + 1, "000")
End If
If T.State = adStateOpen Then T.Close
T.Open "SELECT * FROM PERSONAL", cn, adOpenDynamic, adLockOptimistic, adCmdText
T.AddNew
T!IdEmpleado = txtcodigo
Else
T.Open "SELECT * FROM PERSONAL WHERE idempleado='" + txtcodigo + "'", cn, adOpenDynamic, adLockOptimistic, adCmdText
End If
T!nombre = txtnombres
T!apellido = txtapellidos
T!estadocivil = txtestadocivil
T!telefono = txttelefono
T!fechanacim = txtfechanac
T!dni = txtndoc
T!cuil = txtcuil
T!direccion = txtDIRECCION
T!hijos = txthijos
T!fechaingreso = txtfechaingreso
T!idconvenio = cmbconvenio
T!idempresa = cmbempresa
T!idcategoria = txtcatego
T!categoria = cmbcateroria
T!funcion = txtfuncion
T!idobrasocial = cmbobrasocial
T!observaciones = Trim(txtobservacion)
T.Update

Set T = Nothing
If NUEVO = True Then
frmMensajeNuevo.Show 1
Else
frmMensajeEditar.Show 1
End If
habilitar
LBLTOTAL = P_RELLENAEMPLEADOS(MSHFlexGrid1, 1, Empty)
NUEVO = False
ELIM = 0
Exit Sub
End Sub
Private Sub Form_Load()
Dim Catego As String

If Trim(cmbconvenio) = "SMATA" Then
P_RellenaCombo "SMATA", cmbcategoria
ElseIf Trim(cmbconvenio) = "FEHGRA" Then
P_RellenaCombo "FEHGRA", cmbcategoria
ElseIf Trim(cmbconvenio) = "CEC" Then
P_RellenaCombo "CEC", cmbcategoria
ElseIf Trim(cmbconvenio) = "UOCRA" Then
P_RellenaCombo "UOCRA", cmbcategoria
ElseIf Trim(cmbconvenio) = "FC" Then
P_RellenaCombo "FC", cmbcategoria
ElseIf Trim(cmbconvenio) = "UOM" Then
P_RellenaCombo "UOM", cmbcategoria
End If
P_RellenaCombo "EMP", cmbempresa
P_RellenaCombo "OBRAS", cmbobrasocial
P_RellenaCombo "CON", cmbconvenio
V_DUEÑO = True
Centrar_Objeto Me
LBLTOTAL = P_RELLENAEMPLEADOS(MSHFlexGrid1, 1, Empty)
End Sub
Espero alguien me pueda ayudar
Muchas gracias