Private Sub ComboNombre_Click()
Rem al escoger un item del combobox hace lo siguiente
Rem coloca el costo en textbox1
saldo = 0
CodCliente = ComboNombre.ListIndex + 1
TextBox1.Text = Hoja1.Cells(CodCliente, 2)
Rem coloca el precio de venta (lista) en textbox2
TextBox2.Text = Hoja1.Cells(CodCliente, 3)
TextBox3.Text = Hoja1.Cells(CodCliente, 4)
ultimo = Hoja2.Cells(1, 1)
For z% = 2 To ultimo
If CodCliente = Hoja2.Cells(z%, 1) Then
monto = Hoja2.Cells(z%, 4)
If Hoja2.Cells(z%, 5) = “Debe” Then
monto = -1 * monto
End If
saldo = saldo + monto
End If
Next z%
TextBox4.Text = saldo
End Sub
Para el Command Button 1 (Agregar nueva cuenta)
Private Sub CommandButton1_Click()
Rem para agregar nueva cuenta
Rem se carga userform3
Load UserForm3
Rem se muestra userforrm2
UserForm3.Show
End Sub
Para el Command Button 3 (para ir agregando movimientos)
Private Sub CommandButton3_Click()
Rem para agregar un nuevo movimiento
Rem se carga userform2
Load UserForm2
Rem se muestra userforrm2
UserForm2.Show
End Sub
Para el Command Button 4 (para emitir cartola)
Private Sub CommandButton4_Click()
Rem para emitir cartola
Rem se carga userform4
Load UserForm4
Rem se muestra userforrm4
UserForm4.Show
End Sub
Para Text Box 3 (coloca total venta)
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Rem calcula el total de la venta y lo coloca en textbox4.text
TextBox4.Text = TextBox2.Text * TextBox3.Text
End Sub
Para cuando se activa la User Form
Private Sub UserForm_Activate()
Rem llena los valores del combo cada vez que parte el programa userform_activate
Rem para ello primero parte de la posicion 2
Rem y cambia los valores de z desde 1 a 500
Rem y con el metodo additem llena al combo de valores (nombres de articulos)
If Hoja1.Cells(1, 1) <> “” Then
For z = 1 To 500
ComboNombre.AddItem Hoja1.Cells(z, 1)
Next z
Rem deja en blanco el combo
ComboNombre.Text = “”
End If
End Sub
Luego Insert, User form para el User FOrm de Insertar Movimiento

Cuyos componentes programables son
Command Button 1 (ingresar el movimiento)
Private Sub CommandButton1_Click()
Rem posicion del indice en la celda 1,1
indice = Hoja2.Cells(1, 1)
Rem si el indice es cero se cambia a uno
If indice = “” Then
indice = 1
Hoja2.Cells(1, 1) = indice
End If
Rem incrementa el indice en 1 lugar que es la fila donde debe grabar
indice = indice + 1
Rem coloca el nuevo valor del indice -incrementado- en la celda 1,1
Hoja2.Cells(1, 1) = indice
Rem escribe los contenidos de los textbox en la hoja 1
Rem la fila es el valor del indice y la columna varia segun el contenido
Hoja2.Cells(indice, 1) = ComboBox2.ListIndex + 1
Hoja2.Cells(indice, 2) = TextBox1.Text
Hoja2.Cells(indice, 3) = TextBox2.Text
Hoja2.Cells(indice, 4) = TextBox3.Text
Hoja2.Cells(indice, 5) = ComboBox1.Text
Rem limpia todos los textbox
TextBox2.Text = “”
TextBox3.Text = “”
Rem coloca el foco en textbox1
ComboBox2.SetFocus
End Sub
La User Form al activarse
Private Sub UserForm_Activate()
ComboBox1.AddItem “Haber”
ComboBox1.AddItem “Debe”
ComboBox1.Text = ComboBox1.List(1)
TextBox1.Text = Date
ComboBox2.SetFocus
If Hoja1.Cells(1, 1) <> “” Then
For z = 1 To 500
ComboBox2.AddItem Hoja1.Cells(z, 1)
Next z
Rem deja en blanco el combo
ComboBox2.Text = “”
End If
End Sub
Luego el User Form 3 para agregar nuevas cuentas, Insert, User Form

Cuyo código es:
Para el Command Button 1 (ingresar cuenta)
Private Sub CommandButton1_Click()
Rem posicion del indice en la celda 1,1
indice = Hoja1.Cells(1, 1)
Rem si el indice es cero se cambia a uno
If indice = “” Then
indice = 1
Hoja1.Cells(1, 1) = indice
End If
Rem incrementa el indice en 1 lugar que es la fila donde debe grabar
indice = indice + 1
Rem coloca el nuevo valor del indice -incrementado- en la celda 1,1
Hoja1.Cells(1, 1) = indice
Rem escribe los contenidos de los textbox en la hoja 1
Rem la fila es el valor del indice y la columna varia segun el contenido
Hoja1.Cells(indice, 1) = TextBox1.Text
Hoja1.Cells(indice, 2) = TextBox2.Text
Hoja1.Cells(indice, 3) = TextBox3.Text
Hoja1.Cells(indice, 4) = TextBox4.Text
Rem limpia todos los textbox
TextBox1.Text = “”
TextBox2.Text = “”
TextBox3.Text = “”
TextBox4.Text = “”
Rem coloca el foco en textbox1
TextBox1.SetFocus
End Sub
Finalmente se inserta el User From 4 para emitir cartola Insert, User Form
Solo contiene un Combo Box con el siguiente código
Para el Combo Box 1 (elige cuenta)
Private Sub ComboBox1_Click()
Hoja3.Activate
ultimo = Hoja2.Cells(1, 1)
linea = 1
For z% = 2 To ultimo
indice = z%
CodCliente = ComboBox1.ListIndex + 1
If CodCliente = Hoja2.Cells(z%, 1) Then
monto = Hoja2.Cells(z%, 4)
If Hoja2.Cells(z%, 5) = “Debe” Then
monto = -1 * monto
End If
saldo = saldo + monto
Hoja3.Cells(linea, 1) = Hoja2.Cells(indice, 1)
Hoja3.Cells(linea, 2) = Hoja2.Cells(indice, 2)
Hoja3.Cells(linea, 3) = Hoja2.Cells(indice, 3)
Hoja3.Cells(linea, 4) = Hoja2.Cells(indice, 4)
Hoja3.Cells(linea, 5) = Hoja3.Cells(indice, 5)
linea = linea + 1
End If
Next z%
End Sub
Para la Activación del User Form
Private Sub UserForm_Activate()
If Hoja1.Cells(1, 1) <> “” Then
For z = 1 To 500
ComboBox1.AddItem Hoja1.Cells(z, 1)
Next z
Rem deja en blanco el combo
ComboBox1.Text = “”
End If
End Sub
Y eso sería todo