Professional Documents
Culture Documents
ahora, el libro nos crea automaticamente 3 hojas. vamos a cambiarles el nombre como sigue:
hoja1 = clientes
hoja2 = productos
hoja3 = facturas
bien, ahora inserta una hoja mas y le pones el nombre de impresion
la hoja productos
A1 = clave, B1 = descripcion, C1 = precio
ingresale unos cuantos datos
la hoja facturas
A1 = factura, B1 = fecha, C1 = razon, D1 = descripcion, E1 = precio, F1 = cantidad, G1 = total
Guarda el archivo para que no pierdas los cambios, (murphy dice que windows solo falla cuando tienes algo sin
guardar en pantalla)
DISEO DE LOS FORMULARIOS
Pulsa ALT + F11 y se abre la ventana de VBA.
explicacion.
la creacion de formularios e insercion de controles tambien sera omitida, pues esta en el post anterior.
los prefijos que vamos a usar para los controles son:
lbl = etiqueta o label
txt = cuadro de texto o textbox
cmb = cuadro combinado o combobox
lst = cuadro de lista o listview
grb = marco o frame (grb de groupbox, no se nota la influencia de .net)
chk = casilla de verificacion o checkbox (el cuadrito que le pones o quitas una palomita)
Quiero hacer notar que existe un control grid que facilita la tarea de almacenar datos, pero dado que hay que
encontrar su referencia, y a que tambien varia su uso, ubicacion y existencia con el uso de cada version de windows,
no lo vamos a usar.
No vamos a agregar ningun control externo para hacer mas compatible este archivo entre ordenadores con
diferentes sistemas operativos.
bueno, una vez aclarados los puntos anteriores, vamos por el form mas culero:
FACTURACION
- agrega un nuevo formulario y le pones el nombre de frmFacturacion y caption
- IMPRESION DE FACTURA
- ahora inserta 4 cuadros de lista afuera y por debajo del grbDatos Cliente con los siguientes atributos
lstCantidad con width = 54 y height = 162
lstDescripcion con width = 227.25 y height = 162
lstPrecio con width = 67.55 y height = 162
lstImporte con width = 77.25 y height = 162
en el orden de creacion, ubicalos a la misma altura uno junto de otro.
ademas, inserta una etiqueta arriba de cada lista para que el usuario sepa que contiene cada columna:
arriba de lstCantidad pones una lblCantidad con caption Cantidad
arriba de lst Descripcion pones un lblDescripcion con caption descripcion
y asi con las otras dos listas restantes.
mira nomas que chulo esta quedando el form:
-agrega un boton de comando llamado cmdProductos con caption = Productos y ubicalo a la derecha de cmdBuscar
-agrega un boton de comando llamado cmdAceptar con caption = Aceptar y ubicalo a la derecha de cmdProductos
-agrega una casilla de verificacion o checkbox con nombre chkImprimir y caption = Imprimir al aceptar y ubicala a la
derecha de cmdCancel
este es el aspecto final que deberia tener el formulario:
- VBA te va a insertar el encabezado y final del evento activate. Las lineas de codigo que pongamos en ese espacio
se van a ejecutar cuando formulario se active.
las lineas de abajo del evento click las podemos eliminar para no causar confusion.
y bueno, escribimos dentro del evento activate del formulario las siguientes lineas:
Private Sub UserForm_Activate()
Me.txtFecha.Text = Date
End Sub
a continuacion pulsa F5 y verifica que en el txtFecha se ha escrito la fecha automaticamente.
si hasta aqui todo va bien, continuamos con los eventos de los demas controles como sigue:
control cmdAceptar, evento Click
Private Sub cmdAceptar_Click()
If MsgBox( finalizar la captura de la factura?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
guardarFactura
MsgBox (chkImprimir.Value)
If Me.chkImprimir.Value = True Then ImprimirFactura
End Sub
control cmdBuscar, evento Click
Private Sub cmdBuscar_Click()
frmBuscarCliente.Show ' mostrar el formulario de buscar clientes
End Sub
control cmdProductos, evento Click
Private Sub cmdProductos_Click()
frmAgregarProducto.Show ' mostrar el formulario de agregar productos
End Sub
control UserForm, evento activate
Private Sub UserForm_Activate()
Me.txtFecha.Text = Date ' para poner la fecha cuando se ejecute el form
End Sub
'-- al final de la ventana de codigo, vamos a crear tres procedimientos que no estan ligados al evento de ningun
control, y que pueden ser ejecutados cuando se requiera, aun sin ejecutar ningun evento.
Public Sub sumarImporte() ' suma solo la ultima lista, osea, los importes
Dim i As Integer
Dim dTotal As Double
dTotal = 0
For i = 0 To Me.lstImporte.ListCount - 1
dTotal = dTotal + Val(Me.lstImporte.List(i))
Next
Me.txtSubtotal.Text = dTotal
If dTotal > 0 Then ' aqui se hacen los calculos para el subtotal, iva y total
Me.txtIVA.Text = Round((Val(Me.txtSubtotal.Text) / 100) * 16, 2)
Me.txtTotal.Text = Val(Me.txtSubtotal.Text) + Val(Me.txtIVA.Text)
End If
End Sub
Private Sub guardarFactura()
Dim i As Integer
Sheets( "facturas ).Activate ' activamos la hoja en la que vamos a trabajar
If Trim(Range( "A2" ).Value) = "" Then ' localizamos la celda en donde vamos a empezar a insertar
-- NOTACION - en el ejemplo no estoy incluyendo la funcion para convertir los numeros en texto porque es muy
largo, sin embargo, en el archivo de ejemplo que dejo al final si esta implementada.
y eso es todo con respecto a la facturacion.
CARGAR CLIENTES
- cierra el formulario frmFacturacion
- agrega otro formulario llamado frmBuscarCliente con caption = Buscar Cliente
- agregale los siguientes controles.
lblClientes con caption = Clientes
cmbClientes con style = 2 frmStyleDropDownList (lista para escoger items)
cmdAceptar con caption = Aceptar
los eventos:
control cmdClientes, evento Change
Private Sub cmbClientes_Change()
Cells.Find(What:=Me.cmbClientes.Text, After:=ActiveCell, LookIn:= _
xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
xlNext, MatchCase:=False, SearchFormat:=False).Activate
End Sub
control cmdAceptar, evento Click
Private Sub cmdAceptar_Click()
With frmFacturacion
.txtRazon.Text = ActiveCell.Value
.txtRFC.Text = ActiveCell.Next.Value
.txtDireccion.Text = ActiveCell.Next.Next.Value
End With
Unload Me
End Sub
control UserForm, evento Activate
Private Sub UserForm_Activate()
Dim sUltimaCelda As String
Me.cmbClientes.Clear
Sheets( CLIENTEs ).Activate
If Trim(Range( A2 ).Value) = "" Then Exit Sub
If Trim(Range( A3 ).Value) = "" Then
Me.cmbClientes.AddItem (Range( A2 ).Value)
Exit Sub
End If
sUltimaCelda = Range( A1 ).End(xlDown).Address
For Each f In Range( A2:" & sUltimaCelda).Cells
Me.cmbClientes.AddItem (f.Value)
Next
End Sub
asi se debe ver en la ventana de codigo
Me.txtPrecio.Text = ""
Me.txtCantidad.Text = ""
Me.cmbClave.ListIndex = -1
Me.cmbClave.SetFocus
End Sub
Private Sub txtCantidad_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
' esto es para que el textbox solo acepte numeros
If KeyAscii < 48 Or KeyAscii > 57 Then
KeyAscii = 0
End If
End Sub
Private Sub UserForm_Activate()
Dim sUltimaCelda As String
Me.cmbClave.Clear
Sheets( PRODUCTOS" ).Activate
If Trim(Range( A2 ).Value) = "" Then Exit Sub
If Trim(Range( A3 ).Value) = "" Then
Me.cmbClave.AddItem (Range( A2 ).Value)
Exit Sub
End If
sUltimaCelda = Range( A1 ).End(xlDown).Address
For Each f In Range( A2:" & sUltimaCelda).Cells
Me.cmbClave.AddItem (f.Value)
Next
End Sub
- aqui estan las capturas pa que vean la identacion
PARA FINALIZAR
- en la hoja de impresion, debes quitar las lineas y texto que sirvieron para checar la factura con la plantilla sin mover
los tamaos de las celdas.
- como podras observar, el codigo hace referencia directa a ciertas celdas y hojas. Si cambias el nombre de una
hoja, tambien lo debes hacer en el codigo.
- el nombre del libro no importa
LO QUE DEBES IMPLEMENTAR TU MISMO
- una macro o boton para ejecutar el formulario menu desde excel
- el formulario de captura de clientes
- el formulario de captura de productos
- al hacer click en una lista, las otras tres listas deben activar el item que esta en la misma direccion.
TIPS
- te molesta que los cambios de hojas e insercion sean visibles detras del formulario?? entonces en el evento
activate del menu ponle application.screenupdating = false. esto desconecta la pantalla de excel y se queda
congelada mientras trabajas en el formulario. No olvides poner en true de nuevo esta opcion en el evento
queryunload del formulario, sino no vas a poder descongelar la pantalla.
- la funcion application.visible = false, es igual a la anterior pero esta esconde definitivamente a excel de windows
dejando solo el formulario activo. Tambien tienes que activarla cuando cierres el formulario.
- para ejecutar el formulario de manera automatica al abrir el libro, en el entorno de VBA, en el explorador de objetos
das doble click en el objeto Thisworkbook y en el evento open le pones frmMenu.show
- para cerrar el libro cuando cierres el menu pones en el evento queryunload del menu la siguiente linea:
activeworkbook.save ' para guardar los cambios hechos
application.quit
- para controlar el texto que aparece en el statusbar de excel, usas la funcion application.statusbar = "lo que quieras
escribir"
ahora, hay que agregar un procedimiento mas al formulario de facturacion, ese procedimiento sera el encargado de
que por cada producto que se encuentre en la factura, sus existencia sea descontada de la hoja.
ese procedimiento es sencillo:
Private Sub descontarExistencia(ByVal sDescripcion As String, ByVal nCantidad As Integer)
Dim sUltimaCelda As String
Dim hojaActiva As String
hojaActiva = ActiveSheet.Name ' para recordar la hoja activa
Sheets("PRODUCTOS" ).Activate ' nos pasamos a la hoja de productos
' aqui nomas fijamos los rangos, pa que no marque error si no hay nada en la lista
If Trim(Range("b2" ).value) <> "" Then
sUltimaCelda = Range("b1" ).End(xlDown).Address
Else
sUltimaCelda = "b2"
End If
'seleccionamos el rango de busqueda, para hacer mas rapido el proceso
y luego, en el mismo formulario de facturacion, en el evento click del boton cmdAceptar modificamos el codigo para
que " trabaje " este nuevo procedimiento.
esta modificacion consta de agregar solamente una linea dentro del bucle, asi nos aseguramos de que se ejecute
por cada producto de la lista:
Private Sub guardarFactura()
Dim i As Integer
Sheets("facturas" ).Activate ' activamos la hoja en la que vamos a trabajar
If Trim(Range("A2" ).value) = "" Then ' localizamos la celda en donde vamos a empezar a insertar
Range("A2" ).Activate
Else
Range("A1" ).End(xlDown)(xlDropDown).Activate
End If
ActiveCell.value = Me.txtNoFactura.Text ' insertamos los datos
ActiveCell.Next.value = Me.txtFecha.Text
ActiveCell.Next.Next.value = Me.txtRazon.Text
For i = 0 To Me.lstCantidad.ListCount - 1
ActiveCell.Next.Next.Next.value = Me.lstDescripcion.List(i)
ActiveCell.Next.Next.Next.Next.value = Me.lstPrecio.List(i)
ActiveCell.Next.Next.Next.Next.Next.value = Me.lstCantidad.List(i)
ActiveCell.Next.Next.Next.Next.Next.Next.value = Me.lstImporte.List(i)
descontarExistencia Me.lstDescripcion.List(i), Val(Me.lstCantidad.List(i))
Next
End Sub
Comentarios
@xlalokpox hace 1 ao
Y Los registros o la base de datos de toda la facturacin como lo manejas? Se pueden obtener reportes a partir de
esa baso de datos como consumo por cliente o control de stock?
@kill_spinal hace 1 ao
xlalokpox dijo:
Y Los registros o la base de datos de toda la facturacin como lo manejas? Se pueden obtener reportes a
partir de esa baso de datos como consumo por cliente o control de stock?
La "base de datos" la manejas como se te pegue la gana, pues es una hoja de calculo y no creo que no
sepas algo tan basico como excel.
Claro que se pueden hacer reportes apartir de los datos obtenidos, tengo entendido que es una de las funciones de
excel. No me pasa por la cabeza a alguien que no se le haya ocurrido usar una tabla dinamica o filtros antes de
hacer tu pregunta.
Si tu pregunta es debido a que quieres manejar toda la informacion en formularios sin entrar a las hojas, es posible,
ya que la interfaz es solo un acceso directo a cada funcion de vba, por lo tanto, todo lo que haces manualmente en
una hoja tiene una segunda forma de hacerlo mediante el codigo vb.
Bastaria crear las macros y formularios necesarios para este fin.
@sebaakira hace 1 ao
Hola, tengo una duda, yo hice unas modificacones a tu archivo, y cuando pongo un producto con precio en numeros
decimales y lo multiplica por la cantidad del producto en el listbox lstimporte me pone un numero entero, es decir no
me toma los decimales y el total me lo calcula sin los decimales, que puede ser?
@kill_spinal hace 1 ao
sebaakira dijo:
Hola, tengo una duda, yo hice unas modificacones a tu archivo, y cuando pongo un producto con precio en
numeros decimales y lo multiplica por la cantidad del producto en el listbox lstimporte me pone un numero
entero, es decir no me toma los decimales y el total me lo calcula sin los decimales, que puede ser?
Primero, en la hoja debes poner el formato correcto de las celdas, ya que estas traen por default el formato general.
aqui lo que debes hacer es cambiar el formato de las celdas de los precios o totales a formato de numero con dos
decimales.
La lista no debe tener problemas ya que solo " capta " el string de la celda.
pruebalo y me comentas.
saludos.
@vyktox hace 1 ao
ya no esta disponible
@kill_spinal hace 1 ao
vyktox dijo:
ya no esta disponible
he estado teniendo unos problemas con mi servidor, el servicio es intermitente pero la mayor parte del tiempo esta
disponible.
saludos.
@Big_FidoX hace 1 ao
Hola! Como hara para crear un stock y se me vaya descontando segn los productos que venda?
@kill_spinal hace 1 ao
Big_FidoX dijo:
Hola! Como hara para crear un stock y se me vaya descontando segn los productos que venda?
disculpa la tardanza, pero estaba comiendo pib de dia de muertos con mi abuela y ahora que regrese a la compu he
leido tu comentario.
revisa de nuevo el post, pues lo he modificado con la respuesta a tu pregunta.
saludos.
@patyandsergi hace 1 ao
Hola, tengo unos problemas cuando quiero ejecutar la factura, al principio tengo problemas con la fecha
Private Sub UserForm_Activate()
Me.txtFecha.Text = Date ' para poner la fecha cuando se ejecute el form
End Sub
, despues si elimino la rutina de DATE me salta el depurador al buscar cliente y los productos me pone esto:
Me.cmbClave.Clear
Sheets("PRODUCTOS"
.Activate
If Trim(Range("A2"
If Trim(Range("A3"
Me.cmbClave.AddItem (Range("A2"
.value)
Exit Sub
End If
sUltimaCelda = Range("A1"
.End(xlDown).Address
@kill_spinal hace 1 ao
patyandsergi dijo:
Hola, tengo unos problemas cuando quiero ejecutar la factura, al principio tengo problemas con la fecha
Private Sub UserForm_Activate()
Me.txtFecha.Text = Date ' para poner la fecha cuando se ejecute el form
End Sub
, despues si elimino la rutina de DATE me salta el depurador al buscar cliente y los productos me pone esto:
Me.cmbClave.Clear
Sheets("PRODUCTOS"
.Activate
If Trim(Range("A2"
If Trim(Range("A3"
Me.cmbClave.AddItem (Range("A2"
.value)
Exit Sub
End If
sUltimaCelda = Range("A1"
.End(xlDown).Address
hola, es necesario que me digas el msg de error que te marca desde el principio, probablemente sea un pequeo
detalle pero que no permita que se ejecuten las sentencias siguientes.
aprovecho tambien para comentarte que el codigo hace referencia directa a hojas y rangos especificos, si
cambiamos los nombres de las hojas o movemos las columnas que usamos tendremos errores por doquier.
@mibabilonia hace 1 ao
bueno
@POTTERSCAR hace 1 ao
HOLA TENGO UN PROBLEMA CON EL VINCULO DE LAS HOJAS A LA HORA DE METER LOS CLIENTES Y LOS
PRODUCTOS ME SALE ERROR 91 ESTO ME PASA POR QUE NO ESTOY EN LA MISMA HOJA DE EXEL QUE
EN LA QUE ESTA TRABAJANDO LA MACRO SOLO QUE NO C COMO ACERLE PARA QUE LA LLAME CUANDO
LE DOY AL BOTON DE BUSCAR CLIENTES O AGREGAR PRODUCTO LA VERDAD NO C MUCHO DE EXEL
PERO TU GUIA ESTA MUY BIEN EXPLICADA Y SOLO ME FALTA ESO YA CREE LOS FORMULARIOS DE
CAPTURA AGRADESCO TU AYUDA
@tonys32 hace 1 ao
@kill_spinal hace 1 ao
POTTERSCAR dijo:
HOLA TENGO UN PROBLEMA CON EL VINCULO DE LAS HOJAS A LA HORA DE METER LOS CLIENTES Y
LOS PRODUCTOS ME SALE ERROR 91 ESTO ME PASA POR QUE NO ESTOY EN LA MISMA HOJA DE EXEL
QUE EN LA QUE ESTA TRABAJANDO LA MACRO SOLO QUE NO C COMO ACERLE PARA QUE LA LLAME
CUANDO LE DOY AL BOTON DE BUSCAR CLIENTES O AGREGAR PRODUCTO LA VERDAD NO C MUCHO
DE EXEL PERO TU GUIA ESTA MUY BIEN EXPLICADA Y SOLO ME FALTA ESO YA CREE LOS FORMULARIOS
DE CAPTURA AGRADESCO TU AYUDA
Hola, te recomiendo que cuando entres a un procedimiento o macro, lo primero que hagas es guardar el nombre de
la hoja activa y al final del procedimiento, la ultima linea debe regresar a la hoja anterior, por ejemplo:
estamos en la hoja clientes y necesitas acceder a los datos de la hoja productos, entonces, en tu procedimiento lo
primero es declarar una variable que guarde el nombre de la hoja en la que estas actualmente ANTES DE PASARTE
A PRODUCTOS:
dim sHojaActiva as string ' la variable para guardar el nombre
sHojaActiva = activesheet.name ' aqui guardamos el nombre la hoja
sheets("productos" ).activate ' ahora si nos pasamos con tranquilidad a productos
' y aqui pones todo lo que quieres hacer en la hoja de productos
' y cuando termines, te regresas a la hoja clientes para que no te marque ese error
activeworkbook.sheets(sHojaActiva).activate 'esta debe ser la ultima linea.
pruebalo y comentalo para que los demas chequen si les sirve.
saludos.
@POTTERSCAR hace 1 ao
gracias me sirvio se soluciono el problema solo que ahora tengo otro jeje espero me puedas ayudar mira en guardar
factura
me dice error de compilacion: no se puede encontrar proyecto o la biblioteca y me seala trim esta parte no la e
modificado nada pero parece que no me reconoce el objeto esto lo ace justo despues que pongo aceptar en el
cuadro de facturacion
y aparte de ese en la opcion de
Private Sub UserForm_Activate()
Me.txtFecha.Text = Date
me sale error de compilacion : no se puede encontrar proyecto o la biblioteca y me seala date prove cambiarla por
otra ras como calendar o hoy() pero no funciona jeje mi office es 2010
gracias espero respuesta
@POTTERSCAR hace 1 ao
ya resolvi el error al guardar factura solo quite la funcion trim y ya no me dio error falta lo de la fecha y si me puedes
decir como quitar el redondeo en el subtotal para que me de cantidades exactas x favor gracias
@kill_spinal hace 1 ao
POTTERSCAR dijo:
gracias me sirvio se soluciono el problema solo que ahora tengo otro jeje espero me puedas ayudar mira en
guardar factura
me dice error de compilacion: no se puede encontrar proyecto o la biblioteca y me seala trim esta parte no
la e modificado nada pero parece que no me reconoce el objeto esto lo ace justo despues que pongo aceptar
en el cuadro de facturacion
y aparte de ese en la opcion de
Private Sub UserForm_Activate()
Me.txtFecha.Text = Date
me sale error de compilacion : no se puede encontrar proyecto o la biblioteca y me seala date prove
cambiarla por otra ras como calendar o hoy() pero no funciona jeje mi office es 2010
gracias espero respuesta
@Edward_cd hace 1 ao
Excelente aporte + 10
@natgok hace 1 ao
gracias amigo eres increible me acabas de salvar un dia de proyecto que no se me ocurria que hacer +5 y +5 en el
otro post
@kill_spinal hace 1 ao
natgok dijo:
gracias amigo eres increible me acabas de salvar un dia de proyecto que no se me ocurria que hacer +5 y +5
en el otro post
@natgok hace 1 ao
hermano tengo un problemota... no logro poner agregar clientes y agregar productos...
@kill_spinal hace 1 ao
natgok dijo:
@natgok hace 1 ao
hermano la cosa es que cree las agregar clientes y agregar productos... pero cuando intento meter la informacion y
darle aceptar para que la guarde me dice se ha producido el error 9 en tiempo de ejecucion subindice fuera del
If Sheets("CAPTURA"
.Range("A2"
: Exit Sub
: Exit Sub
: Exit Sub
If Sheets("CAPTURA"
.Range("A2"
Sheets("CAPTURA"
.Range("A2"
.value = Me.txtRazon.Text
Sheets("CAPTURA"
.Range("B2"
.value = Me.txtRFC.Text
Sheets("CAPTURA"
.Range("C2"
.value = Me.txtDireccion.Text
Else
Sheets("CAPTURA"
.Range("A1"
.End(xkdown)(xlDropDown).value = Me.txtRazon.Text
Sheets("CAPTURA"
.Range("A1"
.End(xlDown).Next.value = Me.txtRFC.Text
Sheets("CAPTURA".Ran
e("A1".End(xlDown)
Next.Next.value = Me.txtDireccion.T
xtEnd IfMe.txtRazo
Text =
uot;"Me.txtRFC.Text = ""Me.txtDireccion.Text = ""Me.txtRazon
@natgok hace 1 ao
por aquello lo que quiero poner es una forma de ingresar datos nuevos en el menu
@natgok hace 1 ao
@kill_spinal hace 1 ao
natgok dijo:
hermano la cosa es que cree las agregar clientes y agregar productos... pero cuando intento meter la
informacion y darle aceptar para que la guarde me dice se ha producido el error 9 en tiempo de ejecucion
subindice fuera del intervalo y le doy depurar y me aparece esto en amariyo If Sheets("CAPTURA"
.Range("A2"
si Private Sub cmdAceptar_Click() If Me.txtRazon.Text = "" Then MsgBox (" Razon no puede
estar vacio"
vacio"
estar vacio"
.Range("A2"
.value =
.Range("A2"
.value = Me.txtRazon.Text
Sheets("CAPTURA"
.Range("B2"
.value = Me.txtRFC.Text
Sheets("CAPTURA"
.Range("C2"
Sheets("CAPTURA"
.Range("A1"
.End(xkdown)(xlDropDown).value =
Me.txtRazon.Text Sheets("CAPTURA"
.Range("A1"
.End(xlDown).Next.value =
subindice fuera del intervalo quiere decir que estas tratando de usar una celda que no existe en excel, por ejemplo,
A1048577, siendo que solo existe hasta la A1048576.
ese error se ocasiona cuando VBA trata de buscar la siguiente celda para poner nuevos datos, entonces va a la
primera disponible y de ahi baja hasta encontrar la ultima celda usada, pero si no hay celdas usadas te va a devolver
la ultima fila de la hoja +1, osea, la celda en el numero 1048576 + 1 = 1048577, pero esta celda no existe y por eso
marca el error.
- asegurate que las hojas tienen el nombre correcto
- Pon al menos dos registros, aunque no te sirvan
- checa que los registros comienzan en la columna A
ahora voy de salida, pero me gusraria que me envies tu archivo para poder corregir el problema.
mandame un mp para darte mi correo.
saludos.
@gustavo_tovar hace 1 ao
Hermano... eres un master en esto...
yo tengo unproblema con esta parte:
For Each f In Range(A2:" & sUltimaCelda).Cells <------- Aqui me marca un error de compilacion (se
esperaba: Separador de Listas
Me.cmbOT.AddItem (f.Value)
Muchas Gracias
@POOL12 hace 1 ao
podrias volver a subir el archivo, no me deja descargar el archivo, enlace no funciona.
gracias.
@kill_spinal hace 1 ao
POOL12 dijo:
podrias volver a subir el archivo, no me deja descargar el archivo, enlace no funciona.
gracias.
estaba cambiando mi servidor y de repente me he ocupado en otras cosas. ya maana debe estar en
funcionamiento normal.
saludos.
@kingtrase hace 1 ao
toma mis 10! asi eres NFU!!!! jejeje acuerdate que hay que ser generosos!!!
@kill_spinal hace 1 ao +1
kingtrase dijo:
toma mis 10! asi eres NFU!!!! jejeje acuerdate que hay que ser generosos!!!
graxxx... ya hasta habia dejado de postear
@jorgitoroyo hace 1 ao
excelente. justo lo que estaba necesitando. +10
@Sebasmza hace 1 ao
impresionante gracias capo
@kill_spinal hace 1 ao
Sebasmza dijo:
impresionante gracias capo
gracias.
@marioneldo hace 1 ao
Maestro!!!!!!!!! si se puedieran dar 1000 puntos te los dejaria. Excelente
productos (para el caso presentado sera la columna descripcin) pero al trabajar con la instruccin selection.find se
cae el sistema. Help please.