Cargar datos Combobox desde otra hoja
saludos
Tengo dos hojas en excel una llamada diario e inventario, esta ultima esta oculta.
A atreve de un formulario tengo varios textbox y un combobox, los cuales al seleccionar un articulo en el combobox los textbox se cargan con datos como código articulo, stock actual, precio, etc. Y un textbox en el que coloco una cantidad que corresponde a salida de articulo.
Mi problema es el siguiente con la hoja inventario activa puedo cargar todo pero si lo hago desde la hoja de diario no se carga nada.
La idea es que me descuente en el stock la cantidad especificada en el combobox y que en la hoja de diario me ponga FECHA - CÓDIGO - ARTICULO - CANTIDAD - PRECIO - TOTAL
Todo eso lo tengo bien si el combobox funciona con la hoja de inventario activa. Como lo hago funcionar desde la hoja de diario con la hoja inventario oculta
Private Sub ComboBox1_Enter()
On Error Resume Next
ComboBox1.Clear
Range("B3").Select
Do While Not IsEmpty(ActiveCell)
ComboBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Loop
End Sub
Private Sub ComboBox1_Change()
Cells(ComboBox1.ListIndex + 3, 2).Select
TextBox1 = ActiveCell.Offset(0, -1)
TextBox2 = ActiveCell.Offset(0, 1)
TextBox3 = ActiveCell.Offset(0, 3)
TextBox4 = ""
End Sub
Private Sub CommandButton1_Click()
'resta de valor en la celda activa de la hoja inventario
'OJO Me esta dando error si valor es Cero
ActiveCell.Offset(0, 1) = TextBox2.Value - TextBox4.Value
Dim a, b, c, d As Currency
a = Sheets("Diario").Range("E" & UF)
UF = Sheets("Diario").Range("A" & Cells.Rows.Count).End(xlUp).Row + 1
Sheets("Diario").Range("A" & UF) = Date
Sheets("Diario").Range("B" & UF) = TextBox1
Sheets("Diario").Range("C" & UF) = ComboBox1
Sheets("Diario").Range("D" & UF) = CDbl(TextBox4.Text)
a = TextBox3
Sheets("Diario").Range("F" & UF) = CDbl(TextBox3.Text) * CDbl(TextBox4.Text)
vax = ActiveCell.Offset(0, 2) 'Precio compra
vay = ActiveCell.Offset(0, 3) 'Precio venta
'Calculo de beneficio
Sheets("Diario").Range("K" & UF) = CDbl(TextBox4.Text) * vax
Sheets("Diario").Range("L" & UF) = CDbl(TextBox4.Text) * (vay - vax)
ComboBox1.Clear
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
TextBox4.Value = ""
End Sub
Como siempre
Gracias por su valioso tiempo