Saltar al contenido

Control de stock en excel con access


Enigma25

Recommended Posts

Que tal estimado Enigma!, descargue el archivo nuevamente, ya que has subido varias actualizaciones, como te decía me descargué esta última y no se si soy muy ignorante o no he leído con detenimiento este tema que se ha hecho un poco extenso, pero cuando entro al sistema tengo muchos de los botones de menú des-habilitados y cuando los ejecuto desde VBA, me dice que: "No se puede utilizar la conexión para realizar esta operación. Esta cerrada o no es valida en este contexto", tal vez no este haciendo algo bien, pero culpo a mi ignorancia por no saber mucho sobre access, o tal vez sea que hayas subido una versión demo, espero me puedas contestar. Muchisimas gracias por tu aporte.

Me gustaría que me dieras tu correo para enviarte un archivo que cree también para el stock, tal vez te pueda servir de algo, o en su defecto me puedas orientar para mejorarlo.

Un saludo y muchas gracias.

Enlace a comentario
Compartir con otras webs

  • Respuestas 251
  • Created
  • Última respuesta

Hola @rotenman1

Gracias por tus comentarios. El archivo en si son tres archivos; el de Excel(Que seria el medio para las operaciones), el de Access (Gestor de Bases de Datos) y el ultimo de .jpg (Que seria el de la imagen).

Todos se se usan para el proyecto. sin embargo el que usas es el de Excel ya que el de Access se mantiene cerrado y el de la imagen. Solo debes trabajar con el de Excel ya que emplea código de conexión ADO para conectarse a la base de datos.

Es por ello que te recomiendo descargar los tres, lo pegas a una carpeta que tu crees y abre solo es del Excel.

Comenta si lo lograste. Si no, me avisas igualmente para orientarte mas.

Saludos.

Enlace a comentario
Compartir con otras webs

Amigos una consulta.... Ustedes saben como se hace un cierre de mes?

Tomando en cuenta que muchos ya cuentan con productos. Es necesario el Saldo Inicial. Por ende también seria recomendable realizar un formulario para la operacion de Calculo de "Saldos Iniciales" por cada mes.

Si alguien tiene una idea del como se realiza o como es la formula para realizarlo, les estaria muy pero muy agradecido.

Mis respetos.

Enlace a comentario
Compartir con otras webs

Enigma25 fíjate en el archivo, por un lado un ejemplo de como tengo los saldos iniciales de mis productos y me gustaría poder importarlo directo a tu sistema ocurre lo mismo para los datos de clientes, proveedores entre otros, seria interesante un formulario parecido al que usas en tu reporte de (stock por almacén) donde llamarías a una hoja cualquier donde tendrías las columnas con los encabezados y poder elegir los campos a importar de la hoja auxiliar.

Asi cada quien dependiendo de lo que quiera importar en cada modulo ya sea saldos iniciales o datos de clientes, proveedores etc, pueda hacerlo según su necesidad

Migrar datos.xls

Enlace a comentario
Compartir con otras webs

  • 1 month later...

Hola [uSER=194841]@monjino23[/uSER]

Quizas sea por el problema que se ha presentado con la ultima actualización de microsoft en el que los controles activex dejan de funcionar.

Si este es el error que se te presenta, mora el siguiente link para corregir el error:

http://www.exceleinfo.com/vba/controles-activex-deshabilitados-en-excel-despus-de-aplicar-actualizacin/

De todos modos adjunta la imagen que se muestra a intentar abrir el archivo Excel. Así podré verlo mejor.

Saludos cordiales.

Enlace a comentario
Compartir con otras webs

Enigma, buenas tardes. Después de un tiempo de andar ausente pude ver el funcionamiento de tu trabajo de manera minuciosa. Bueno que puedo decir; excelente , pretendo analizar a fondo el código que manejas y tratar de agregarle los módulos de : devoluciones al almacén y devoluciones a los proveedores, esto me parece mejoraría tu trabajo. Saludos.

Una observación: Creo que en la parte de registro de proveedores y clientes veo mas viable que el combobox despliegue la lista del nombre del proveedor en lugar del código que arroja en automático, esto con el fin de agilizar la búsqueda de estos a la hora de realizar un movimiento.

Otra cosa; sería bueno que en el modulo de movimientos al iniciar el form de entrada o salida, se coloque el focus en donde se debe llenar primero y cuando este lleno automáticamente me mande al siguiente paso a llenar, es decir que el focus te vaya llevando paso a paso a los espacios que debes de llenar, eso sería muy bueno y no es algo difícil, bueno esa es mi opinión.

Enlace a comentario
Compartir con otras webs

Hola [uSER=157801]@rotenman1[/uSER]

Agradezco tu receptividad por el trabajo y espero que lo que comentas de las otras operaciones las puedas hacer. En mi caso, estoy un tanto complicado con las actualizaciones al respecto ya que me gustaría aprender sobre la contabilidad y este próximo 14/02/15 iniciaré. Pero eso no quiere decir que no lo haré. Mas bien quiero darle mas cuerpo al trabajo.

Fíjate que lo que indicas de que se abra un listado de proveedores y clientes en las operaciones ya es un hecho desde que lo aporté. Al hacer doble en los respectivos combobox, se mostrará un formulario de "Búsqueda Avanzada" para que al tipear cada letra, aparezcan las coincidencias y te aseguro que es de gran ayuda.

Respecto al foco,.... con gusto. Atenderé tu solicitud.

Mil gracias hermano.

Enlace a comentario
Compartir con otras webs

  • 2 weeks later...
Hola [uSER=194841]@monjino23[/uSER]

Quizas sea por el problema que se ha presentado con la ultima actualización de microsoft en el que los controles activex dejan de funcionar.

Si este es el error que se te presenta, mora el siguiente link para corregir el error:

http://www.exceleinfo.com/vba/controles-activex-deshabilitados-en-excel-despus-de-aplicar-actualizacin/

De todos modos adjunta la imagen que se muestra a intentar abrir el archivo Excel. Así podré verlo mejor.

Saludos cordiales.

Enlace a comentario
Compartir con otras webs

  • 2 months later...

Hola [uSER=185812]@RICARDO24607869[/uSER]

Aun estoy en el desarrollo del control de inventario del que les había hablado. Algunos que otros problemas en el mismo pero enfocado en terminarlo.

Pronto daré los avances del mismo.

Gracias por estar atento.

Saludos.

Enlace a comentario
Compartir con otras webs

P.D.

Por recomendaciones de los expertos, estoy trabajando el control de inventario con

Transacciones Métodos BeginTrans, CommitTrans y RollbackTrans (ADO)

Un ejemplo:

Sub Registrar()

If C_Error = False Then
    MsgBox "Error de Conexión", vbCritical, "Error"
    Exit Sub
Else

    Cnn.BeginTrans 'Inicia una nueva transaccion

    Sql = "Insert Into Tb_Productos" & _
    "(Codigo, Detalle, UMB, UMV, CATEGORIA, TIPO, Area, " & _
    "[Codigo Barra UMB],[Codigo Barra UMV],[Codigo Barra Sub_Bulto],[Codigo Barra Bulto]," & _
    "[Longitud UMB],[Ancho UMB],[Altura UMB],[Unidades UMB],[Peso Neto UMB],[Peso Bruto UMB]," & _
    "[Longitud UMV],[Ancho UMV],[Altura UMV],[Unidades UMV],[Peso Neto UMV],[Peso Bruto UMV]" & _
    ")" & _
    "Values" & _
    "('" & UCase(TxtCodigo) & "','" & UCase(TxtDetalle) & "','" & UCase(CmbUMB) & "','" & UCase(CmbUMV) & "','" & UCase(CmbCategoria) & "','" & UCase(CmbTipo) & "','" & UCase(CmbArea) & _
    "','" & TxtBarraUMB & "','" & TxtBarraUMV & "','" & TxtBarraSB & "','" & TxtBarraB & _
    "','" & TxtLU & "','" & TxtAU & "','" & TxtAAU & "','" & TxtXUMB & "','" & TxtPNU & "','" & TxtPBU & _
    "','" & TxtLUV & "','" & TxtAUV & "','" & TxtAAUV & "','" & TxtXUMV & "','" & TxtPNUV & "','" & TxtPBUV & _
    "')"

On Error GoTo Diana 'En caso de Error salta

    Cnn.Execute Sql, adCmdText 'Ejecuta el SQL
    Cnn.CommitTrans 'Guarda la transaccion
    MsgBox Mensaje, vbInformation, "Datos Cargados"
    Exit Sub
Diana:
    Cnn.RollbackTrans 'Anula la transacción
'    MsgBox "El Dato no fué Cargado", vbCritical, "Error"
'***********************************************************
    If Err.Number = -2147467259 Then
        MsgBox "Datos Repetidos", vbCritical, "Error"
    Else
        MsgBox "Error Nº : " & Format(Err.Number, "#,##0") & vbCrLf & vbCrLf & Err.Source & vbCrLf & vbCrLf & Err.Description, vbCritical, "Error"
    End If
'***********************************************************
End If
End Sub

Esto será una gran ventaja.

Enlace a comentario
Compartir con otras webs

  • 1 month later...

hola... primero que nada felicitarte por el desarrollo de este programa... necesito saber si puedes liberar la opción del generador de códigos en los productos... yo trabajo con productos los cuales ya tengo codificados y están en en el inconsciente de los trabajadores, lo otro es ver la opción de migrar mi base de productos al programa con los mismos parámetros que ya trabaja este programa.

desde ya muchas gracias....

Enlace a comentario
Compartir con otras webs

Hola

Déjame ver que hago para ayudarte.

P.D. Estoy trabajando en un nuevo proyecto que pronto estará a la orden.

Saludos.

Gracias por responder, te comento que el ingreso masivo lo realice directamente en la base de datos de access... y en relación a los informes también los puedo generar por access... podrías contarnos en que consiste el nuevo proyecto... posiblemente te podemos ayudar con lluvia de ideas y formatos.

slds.

Enlace a comentario
Compartir con otras webs

Sigue siendo el de inventarios pero este ya cuenta con mejoras en cuanto a códigos ya limitaré lo mas posible la cantidad de los codigos y contará con Métodos BeginTrans, CommitTrans y RollbackTrans. Aunado a ello, tambien el registro de los productos será basado tambien en sus dimensiones, peso, etc.

También las operaciones de Entradas y/o Salidas se harán registrado dichas operaciones por una clave la cual servirá tambien para las consultas Ejemplo: 1-Entrada, 2-Salida.

Lo de las facturaciones es lo que no tengo a la mano ya que este si necesitaría ayuda para hacerlo pero estoy seguro que con la forma en voy estructurando la base de datos, se incluiría sin problemas.

Si conoces el como hacerlo o al menos sabes la lógica de ello, espero me ayudes.

Enlace a comentario
Compartir con otras webs

Por cierto.... cuantos caracteres usas en los codigos?

te adjunto una muestra con los códigos cargados, normalmente si el código esta compuesto por letras y números puede ser de una extensión de 12 caracteres.

Para poder generar el formato de la facturación debes considerar un formato que contenga los precios de ventas, estos deben ser ingresados por cada usuario, el precio de costo no debe ser algo que te preocupe, el formato de la factura debe contener el número de identificación completa del cliente esto es: número de identificación del cliente conocido dependiendo el país como DNI - NIT - RUT, la dirección, ciudad, número de teléfono.

El membrete de la factura debe contener todos los datos de nuestra empresa.

debes considerar la tasa de impuesto IVA, esta debe permitir ajustarla de acuerdo al país donde se utilice el programa.

La Factura debe detallar el total neto, IVA, y Total Bruto.

creo que debo tener un formato de factura, lo buscare y te lo hago llegar.

Debes considerar que el monto total de la factura debe estar indicado en letras también.

voy a hacer lo posible por colaborar con este excelente programa... slds.

Editado por moderación para eliminar imagen con datos confidenciales.

Enlace a comentario
Compartir con otras webs

Gracias por la información. Como dato importante, omite por sobre todo publicar información de tu empresa ya que incurres en una falta de discreción.

Solo con decir que el máximo de caracteres era de 12 y con ello puedo trabajar.

Enlace a comentario
Compartir con otras webs

Gracias por la información. Como dato importante, omite por sobre todo publicar información de tu empresa ya que incurres en una falta de discreción.

Solo con decir que el máximo de caracteres era de 12 y con ello puedo trabajar.

gracias lo tendré presente... slds.

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.


  • 96 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      177
    • Comentarios
      90
    • Revisiones
      27

  • Crear macros Excel

  • Mensajes

    • buenas noches, quisiera saber si puedo mejorar mi macros que se encuentra en el evento change de la hoja de calculo de Excel, son códigos de cálculos básicos, además si me pudieran ayudar a reducir el código o darme algún tip para reducirlo yo mismo estaría muy agradecido.  de ante mano muchas gracias     Private Sub Worksheet_Change(ByVal Target As Range)     Application.ScreenUpdating = False     Application.Calculation = xlManual     Application.EnableEvents = False              If Not Intersect(Target, Range("$L$5:$Y$9")) Is Nothing Then             Sub todo()          Range("E22") = WorksheetFunction.Sum(Range("E4:E21"))     Range("E23") = WorksheetFunction.Sum(Range("E4:E19"))     Range("E24") = WorksheetFunction.Sum(Range("E23") - WorksheetFunction.Sum(Range("I4:I7")))     Range("i22") = WorksheetFunction.Sum(Range("I4:I21"))     Range("I4") = Range("E23") * 0.1     Range("I6") = Range("E23") * 0.0127     Range("I5") = Range("EN10") * Range("EN11")     Range("I7") = Range("E23") * 0.006     Range("I25") = Range("E22") - Range("I22")     Range("I12") = Range("E24") * 0.03     Range("C7") = WorksheetFunction.Sum(Range("EQ8") - (Range("EQ9"))) + Range("EN13") + Range("EN14") + Range("EN15") + Range("EN16")     'Range("E7") = WorksheetFunction.Sum(Range("C7") * ((Range("E4") * 0.0077777)))     Range("C9") = Range("EQ9") + Range("EN17") + Range("EN18") + Range("EN19")     'Range("E9") = WorksheetFunction.Sum(((((Range("E4") / Range("C4")) * 7) / 45) * 1.3) * 1.5) * Range("C9")     'Range("E8") = WorksheetFunction.Sum(((((Range("E4") / Range("C4")) * 7) / 45) * 0.3)) * (Range("C8"))     Range("E9") = WorksheetFunction.Sum(((((Range("E4") / Range("C4")) * 7) / 44) * 1.3) * 1.5) * Range("C9")     Range("E8") = WorksheetFunction.Sum(((((Range("E4") / Range("C4")) * 7) / 44) * 0.3)) * (Range("C8"))     Range("E7") = WorksheetFunction.Sum((((Range("E4") / Range("C4")) * 7) / 44) * 1.5) * Range("C7")          End Sub              End If                  Application.Calculation = xlAutomatic     Application.ScreenUpdating = True     Application.EnableEvents = True     End Sub
    • Buenas perdonad la espera adjunto el fichero Excel y explico mas detallado lo que me solicitan: Lo que me solicitan es que esos CP de la pestaña Casos de prueba los cuales tienen formulas para que cuando se copien y peguen junto a sus pasos el CP se va autoincrementando a 1,2,3 etc...., pero si copias ese CP bien solo con el primer paso o con todos sus  pasos y lo insertas entre dos CP no continua con la numeración, como se ve en la foto al hacer eso el CP insertado continua con la numeración CP2 y el de abajo pone también CP2 no se incrementa ni ese ni el valor de CU que hay a la derecha que también es incremental. Necesitaría que continuara con esa numeración aun insertándolo entre medio de 2 tanto el CP como el CU de la derecha. También me solicitan que el campo Ciclo 1 de la pestaña Resumen es auto incremental cuando copias y pegas va sumando 1, pero en las formulas referentes a Ok KO Y bloqueo al copiar y pegar se mantiene la misma formula , la idea es que cuando copies y pegues la fila donde están los ciclos se autoincremente Ciclo a 1,2,3,4 etc... y la formula de los campos OK,KO y Bloqueos se incremente también pasando de la columna I a la J  luego a la k etc... y que en Resultados Ciclo el numero de la formula también se incremente Resultados Ciclo 1 , 2 ,3 etc... que cambie la columna a la vez que el numero de Resultados Ciclo. Gracias por adelantado un saludo. Plantilla v3 Pruebas.xlsx  
    • Saludos amigos espero estén bien Estoy intentando hacer un formulario que me convierta unidades de masa sin embargo  en el mejor de los casos solo he podido lograr la conversión de una unidad a la vez en los TextBox 1, 3, 5, 7, 9, 11 y 13 y cuando lo logro el resultado que se copia  en la celda no se corresponde con el obtenido originalmente en el Textbox del Formulario (frmconv)  ejemplo al convertir 1900 Kg a Lb el resultado en el TextBox1 =4188,78298142 sin embargo al guardar el resultado lo que se copia en la Celda  "F11" es  418.878.298.142,00, adicionalmente el resultado de la conversión no se visualiza inmediatamente por lo que debo de hacer click en los TextBox 1, 3, 5, 7, 9, 11 y 13  para ver el resultado. Mucho les sabre agradecer la ayuda que me puedan brindar. PRUEBA.xlsm
    • Saludos a ambos. Copiar y pegar por sí solas, no tengo el conocimiento de que sirvan como "evento" para actualizar las referencias que buscas hacer, en la forma que lo quieres hacer, ó la fórmula como la quieres hacer. Te recomiendo abrir un tema similar en Macros, es posible que algún Maestro te de alguna idea. Por otro lado, si debe ser con funciones, entonces tendías que interactuar con COLUMNA() y FILA() para que al pegar el destino "sepa" donde está ubicado e intentar cambiar la referencia. =INDIRECTO(CARACTER(COLUMNA()+64)&FILA()) Algo como eso se podría usar para obtener el código ASCII de la letra de la columna (donde 65 es el código para “A”), y FILA() devuelve el número de la fila. La función CARACTER() convierte el código ASCII en una letra. Luego, INDIRECTO() toma la cadena resultante (por ejemplo, “A1”, “B2”, etc.) y la usa como una referencia de celda. En ese caso, una posible idea de editar tu ejemplo sería: =SI(INDIRECTO("'Casos de Prueba'!"&CARACTER(COLUMNA()+64)&"1")="Resultados Ciclo 1"; SI(CONTAR.SI(INDIRECTO("'Casos de Prueba'!"&CARACTER(COLUMNA()+64)&":"&CARACTER(COLUMNA()+64)); "OK")=0; 0; CONTAR.SI(INDIRECTO("'Casos de Prueba'!"&CARACTER(COLUMNA()+64)&":"&CARACTER(COLUMNA()+64)); "OK")); 0)   Enfatizo que es una idea, es muy probable que haya que editar. Así como esta su tema, la recomendación del maestro toma relevancia porque especular o deducir no es lo adecuado para intentar ayudar en este tipo de consultas. Por esta causa de mi parte por ejemplo no puedo aportar algo adicional.
    • En el ejemplo te he puesto 1 segundo para no hacer largo el gif, cámbialo a tu necesidad
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.