Cargar datos en un ComboBoxt a partir de un cuadro de texto
No he podido con esto y llevo semanas dándole y nada, por favor, que un experto me ayude, por favor, tengo un formulario hecho en openoficce, el cual me almacena datos que le ingreso a una hoja del archivo de openoficce, y necesito cada vez que ingreso una referencia, vaya a una hoja y traiga el concepto y lo coloque en otra caja de texto, así se que la referencia que acabo de ingresar, es la correcta, dejo el código de la que ya tengo, sin embargo me falta lo más importante
Global Const AMARILLO_PASTEL As Long = 16777164 Global Const BLANCO As Long = 16777215 ' ***** BASIC ***** Option Explicit Dim oinventario As Object '----------------------------------------------------------------- ' Abre el diálogo de nombre Dialogo Sub Mostrar_inventario() DialogLibraries.LoadLibrary("Standard") oinventario=CreateUNODialog(DialogLibraries.Standard.inventario) oinventario.Execute() End Sub '------------------------------------------------------------------ ' Cierra el diálogo Sub Cerrar_inventario() oinventario.EndExecute() 'MsgBox "Gracias por la visita. Vuelve pronto !!!", 64, "Diálogo en Calc" End Sub '----------------------------------------------------------------- Sub Guardar_Datos() Dim xDato As Variant, nRow As Long Dim ObjetoFoco As Object dim document as object dim dispatcher as object dim args1(1) as new com.sun.star.beans.PropertyValue document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") If MsgBox( "¿Deseas guardar los cambios realizados?", 33, "Optimizacion" ) = 1 Then nRow = UltimaFila( 1 ) With oinventario.Model xDato = .TextField1.Text ThisComponent.Sheets(1).GetCellByPosition(0,nRow).SetFormula( xDato ) xDato = .TextField3.Text ThisComponent.Sheets(1).GetCellByPosition(2,nRow).SetFormula( xDato ) xDato = .TextField4.Text ThisComponent.Sheets(1).GetCellByPosition(3,nRow).SetFormula( xDato ) xDato = .TextField5.Text ThisComponent.Sheets(1).GetCellByPosition(4,nRow).SetFormula( xDato ) .TextField1.Text = "" .TextField3.Text = "" .TextField4.Text = "" .TextField5.Text = "" End With End If ObjetoFoco = oinventario.getControl("TextField1") ObjetoFoco.setfocus() dispatcher.executeDispatch(document, ".uno:Save", "", 0, args1()) End Sub ' Calcula cual es la primera línea disponible en la hoja Function UltimaFila( nHoja As Integer ) As Long '------------------------------------------------------------------- Dim oHoja As Object, n As Long oHoja = ThisComponent.Sheets(nHoja) n = 0 Do While True If oHoja.GetCellByPosition(2,n).GetFormula = "" Then Exit Do End If n=n+1 Loop UltimaFila = n End Function
Respuesta de Dante Amor
2