Saltar al contenido

Macros y programación VBA

Temas sobre la automatización de Excel utilizando macros y VBA. Errores de VBA. ¿No consigues que tus macros hagan lo que necesitas?

  1. Buenas noches. Necesito ayuda con lo siguiente. Tengo una nómina en la que algunas personas pueden hacer 2 turnos en el día y en que además pueden tener recargos nocturnos, u horas extras diurnas y nocturnas. La jornada diurna sería desde las 6:00 am hasta las 10:00 pm. La jornada nocturna sería desde las 10:00 pm hasta las 6:00 am. Por ejemplo: Un empleado puede ingresar a laborar a las 2:00 am y terminar a las 2:00 pm El horario serían 9 horas contando con 1 hora de descanso, es decir, de 2:00 am hasta las 11:00 am. De 11:00 am hasta las 2:00 pm serian 3 horas extras diurnas. Además, de las 2:00 am hasta las 6:00 am tendrían 4 horas de recargo nocturno. Este m…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 882 visitas
  2. Hace un tiempo pedí ayuda para que me ayudaran a resolver un problema con una nomina realizada en excel, lo cual he resuelto por mi cuenta y les dejo el archivo para quienes deseen consultarlo, puede ayudarle a alguien, el código lo he tratado de reducir siempre más y más, ya que hacia uso de muchos (IF) cosa que elimine con los Case rompiendo los ciclos y casos, les dejo el archivo alojado en mediafire, para quienes gusten checarlo. Simple File Sharing and Storage. El archivo esta realizado con Macros por lo cual tendrán que activar las macros en excel, el código es accesible sin protección y confiable, puede alargarse para más empleados o acortarse, también se ha de p…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.1k visitas
  3. Hola queridos foreros, podrían ayudarme con una macro por favor, necesito normalizar o tabular a columnas una serie de tramos (desde - hasta) que se repiten, pero que tienen distinta información ("especie") en columna E, en este ejemplo son 4 posibles "especies", a veces pueden ser 7 u 8, cada "especie" además tiene asignado un porcentaje (columna F). Lo que requiero como solución se muestra a modo de ejemplo en columnas desde la "J" a la "P". adjunto un ejemplo sencillo y la solución que requiero. Ojalá puedan ayudarme estimados foreros. ayudaexcel_tabular_tramos.xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 386 visitas
    • 1 seguidor
  4. Started by hipomenes,

    hola amigos estoy empezando con esto de los macros y no lo he hecho con buen pie estoy intentando crear una macro que me selecciones todas las celdas desde la b4 todas las celdas que tengan algo escrito y lo hago tal que asi sub seleccion() [b4].currentregion.select end sub[/CODE] pero como en b2 y por ahi hay cosas tambien me lo selecciona como puedo hacer que seleccione solo desde b4 a la derecha y hacia abajo las celdas que tengan algo? no subo el archivo por que es para hacerlo en una hoja que empiezo en blanco

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 1.4k visitas
  5. Started by Edvin Velazquez,

    Buenas tarde estimados: Les agradecería me ayudaran a darle una nueva presentación a los registros de una base de datos. Lo que preciso es extraer los datos de la Hoja1 para que los muestre en la forma en la Hoja2 del ejemplo. Gracias de antemano Libro1.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 565 visitas
  6. Hola, espero puedan ayudarme Tengo un userform de una listbox con selección múltiple, he logrado que los items que selecciona el usuario aparezcan en la misma celda, sin embargo cada vez que hago una selección nueva me borra la anterior. lo que busco es que el usuario puede seleccionar nuevamente los items y que vayan apareciendo en la celda siguiente. Gracias! Ejemplo.zip

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 665 visitas
  7. Started by LeandroA,

    Les comparto este ultimo proyecto en que estado jugando espero que les sea de utilidad.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 824 visitas
  8. Started by kuro.san,

    Buenos dias, soy nuevo miembro y me da gusto formar parte de esta comunidad, espero pueden apoyarme con mi laborioso problema, lo detallo a continuación: Tengo un archivo el cual contiene una lista de datos, lista de la cual se quiere lo siguiente: 1. Tomar de la hoja "Indice" un nombre de la casilla "Iniciativa" y crear una hoja con ese nombre 2. Tomar el formato de la hoja "Base" y pegarlo igual en esa nueva hoja 3. Que tome los datos de la hoja "Indice" de las casillas "iniciativa" y "encargado" y los pegue en los campos correspondiente de la nueva hoja creada. (a fin de personalizar cada hoja nueva) 4. Establecer un vinculo que vaya de…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 778 visitas
  9. Invitado Wiru
    Started by Invitado Wiru ,

    Hola a todos. Quizás mi pregunta anterior no estuviera lo suficientemente clara. Mejor subo un ejemplo de la macro. La hoja está protegida por contraseña (es : "cuad" sin las comillas) como veréis en el código, excepto las celdas A23, B23, C23 y E23. Si l a celda A23 está vacia o hay escrito algo distinto de "prueba" (sin comillas), dichas celdas quedan desprotegidas y puedo insertar cualquier valor, pero si escribo "prueba", deben protegerse (Locked) las celdas B23 y E23. Pues bien la macro dá error y me salta el depurador en la linea de Range("E23").Locked = False o en Range("E23").Locked = True y lo único que sé es que el motivo es por ser E23 una celda combinada…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 653 visitas
  10. Started by jabrajam,

    Buenas noches al foro, Os pido ayuda con un codigo que he encontrado y que no soy capaz de poder csmbiarlo para que me sirva. Os explico, el codigo que os muestro me realiza la siguiente operacion, me copia lo que tenga en la hoja 1 el la celda E2 en la hoja 8 en la colunma c y luego lo que tenga de la hoja 1 desde E11 a E 58 en la hoja 8 debajo de lo ultimo escrito en la columna C, hasta hay practicamente correcto( digo practicamente porque de E11 a E58 existen una serie de campos vacios que me gustaria que los obviara pero no se como), pero para el siguiente registro me vuelve a copiar todo el nuevo registro en la hoja 8 en la columna C a partir de la ultima celda va…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.7k visitas
  11. Started by NNycha26,

    BUenas tardes, Podrian ayudarme con este archivo. Lo que deseo es realizar la misma busqueda de las celdas mensionadas. apretando el boton buscar despues de colocar el nro de lote del producto, posteriormente realizar una nueva busqueda sin que se pierda la formula de las celdas. Gracias por su ayuda. base.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 654 visitas
  12. Started by RubenDario,

    Buenas tardes a todos: Utilizo actualmente la funcion "SI" de comparación lógica y me obliga a escribir y llenarme de formulas. Estoy seguro que se puede mejorar esto con VBA pero soy totalmente inexperto, más aún tratándose de eventos. Desde ya, agradezco cualquier ayuda ó consejo que puedan darme. Rubén NumeracionAutoincrementada.xlsx

    • 0

      Reacciones de usuarios

    • 14 respuestas
    • 2.6k visitas
    • 1 seguidor
  13. Hola a todos de la comunidad de AYUDA EXCEL, felicitarles a todos por sus valiosos aportes, en esta ocasión quisiera pedirles apoyo en el siguiente tema, para mi seria una gran herramienta que simplificaria mis labores diarias. gracias amigos.... NUMERACION AUTOMATICA.xlsx

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.1k visitas
  14. Started by Rogeliobus,

    Buenos dias amigos: les expongo mi siguiente inquietud: tengo el siguiente codigo: Private Sub UserForm_Initialize() Range("Idconsecutivo") = Range("Idconsecutivo") + 1 Me.TxtIdregistro = Range("Idconsecutivo") End Sub esto lo que hace es brindarme el consecutivo del siguiente registro a grabar, pero tengo el problema que si no grabo los datos correspondientes y cancelo la pantalla donde estoy grabando, el consecutivo que me brinda el codigo queda grabado y lo que quiero es que me quede el numero anterior. agradeciendo por su ayuda, les saludo

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 705 visitas
  15. Started by tesmer,

    Hola, tengo una consulta relacionada con la numeración de Botones. Al crear un Botón (al que luego asigno un Macro), este asume el nombre "Botón 1", el siguiente "Botón 2", etc ..... Por la estructura de de mi hoja, una macro borra estos botones y luego los vuelve a crear. El problema es que los nuevos botones tienen el nombre "Botón 3", "Botón 4", etc. Como esta operación la repito muchas veces, luego de un par de semanas, el nombre de los botones llega a "Botón 65536", etc., luego de esto, me arroja error, me imagino por que llegó a número máximo de botones. Existe alguna forma de "Resetear" o Limpiar esta numeración en algún momento, para …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 542 visitas
  16. Started by Suret,

    Buenos dias amigos mios, porfavor como seria una macro en excel que me empieze a numerar celdas: 1ro: Que la macro pida Prefijo, ejemplo: Item 2do Que la macro pida Numero inicial, ejemplo: 78.00 3ro que la macro pida una constante, ejemplo: 0.02 4to empezar la numeracion en un celda cualquiera: Celda C4= Item 78.00 Celda B5= Item 78.02 Celga G10= Item 78.04 y asi susecivamente, hasta finalizar con un esc.

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 600 visitas
    • 1 seguidor
  17. Haber, lo que no consigo es la numeracion conjunta de albaranes y facturas, me explico: 1º Cuando hago un albaran pulsando el boton iniciar en la casilla E3 cuando se usa por primera vez deberia mostrar el numero 1, una vez acabado el albaran pulsamos Genera albaran, nos pregunta si queremos imprimir o no si decimos que no nos pasa todos los datos del albaran a la hoja Facturacion, hata este punto bien, pero despues cuando hagamos otro albaran quiero que compruebe en la hoja Facturacion en la columna A los numeros de albaran que haya y le asigne al albaran un numero más y si no hubiera ningun albaran en la hoja Facturacion porque ya se habiera facturado que me respete …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.5k visitas
  18. Started by cachuel,

    Estimados, Les pido ayuda con lo siguiente. Hace un tiempo había solicitado algo parecido, pero luego tuve que cambiar el formato de la tabla y no supe cómo solucionarlo. Según el ejemplo adjunto, en las columnas X/AI se ingresa manualmente un importe relacionado a la facturación del mes que representa cada columna. Cada vez que se ingresa uno de estos importes, en las columnas A/L (que son el reflejo de cada mes representado en X/AI) la macro debe colocar automáticamente un número único correlativo ascendente (comenzando desde el 1) en el mes indicado. Este número debe ir aumentando por orden de introducción. En el adjunto, a manera de ejemplo muestro lo siguiente: …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 598 visitas
  19. Started by cachuel,

    Estimados, En esta ocasión solicito ayuda para ver si se puede realizar una macro que, según el ejemplo adjunto, realice lo siguiente: Las columnas A / L son los meses del año. En las columnas AK, AM, AO, AQ, AS, AU, AW, AY, BA, BC se coloca la fecha en que a cada cliente se le emitirá una factura (una por mes). Cada vez que se coloque una fecha en las columnas correspondientes, la macro debe agregar automáticamente un número correlativo ascendente (comenzando desde el 1) en el mes indicado (columnas A / L) según vayan siendo ingresadas las fechas, o sea por orden de introducción o momento en que se lo va ingresando. Según el ejemplo adjunto: En el mes de m…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 626 visitas
  20. Started by Milton Cordova,

    Saludos estimados Master tenha la gentileza de ayudarme con esta macro: tengo tres rangos A5:A20 C5:C20 E5:E20 lo que deseo es que al dar doble clic en el A5:A20 empiece la numeracion en cualquier celda empezando desde el numero 11 hasta llegar al 19 y luego no me permita mas, de la misma manera para el rango C5:C20 con la numeracion desde 21 hasta el 30 y para E5:E20 con la numeracion desde 31 al 40. finalmente si quiero eliminar algun numero puedo hacer clic derecho y borrar el numero de la celda, y cuando sigo con cl clic este numero se debe restaurar actualizado el conteo. Gracias DOBLE CLIC RANGOS NUMERADOR AUTOMATICO.xls

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.3k visitas
  21. Ciao a tutti, mi chiamo Maurizio e il mio problema è questo: su un foglio Excel, ho creato una tabella che prende come riferimento i dati posti sul foglio 1. Ora il mio problema è questo: vorrei assicurarmi che una volta hai creato un grafico, passerà al foglio 2 e quello del Foglio 1 scomparirà dal grafico. Ma da allora dovrò ricreare gli altri sempre sul foglio 1; Vorrei che il numero della grafica riprendesse sempre da 1 E tutto questo possibile. Grazie alla disponibilità. Saluti sinceri di A.Maurizio. Crea Nuovo Grafico Maury.xlsm

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 1.4k visitas
    • 1 seguidor
  22. Started by exskizzo,

    Buenos dias. Revisando los aportes, particularmente en este que es de [uSER=46507]@Macro Antonio[/uSER]: https://www.ayudaexcel.com/foro/threads/numerador-de-documentos.13521/#post-67345 Este aporte lo aplico desde hace un par de años, pero como todo va evolucionando, me ha surgido una duda la cual describo a continuacion y saber si es posible lo siguiente: Este aporte funciona para enumerar una por una hoja, si lo que pretendo es enumerar varias hojas a la vez, como hacerlo con este mismo aporte. Gracias y saludos.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 747 visitas
  23. Started by vanenqn,

    Hola a todos, queria hacer una consulta, tengo este codigo: Public Sub Worksheet_Selection_Change(ByVal Target As Range) Dim nFilas As Long Dim nFila As Long Dim i As Long nFilas = Cells(Rows.Count, 4).End(xlUp).Row nFila = 1 For i = 11 To nFilas + 11 If Cells(i, 4) = "" Then Cells(i, 27) = "" If Cells(i, 4) <> "" Then Cells(i, 27) = nFila nFila = nFila + 1 End If Next End Sub con ese código numero las filas en el rango deseado, desde la celda 11 hacia abajo las que hayan.. el tema que yo aplico filtro y obvio la cantidad total se reduce de q se 20 aprox.. a 5 filas.. el tema que ese código numero perfecto pero no le im…

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.1k visitas
    • 1 seguidor
  24. Started by Moroquito23,

    Hola buenas noches: En una hoja tengo una macro que me ayuda a pegar información en la columna E a partir de la fila 17. todo esto dependiendo de la columna C. en ella celda (C17) pongo un número que trae los datos de otra hoja y los coloca en la misma fila, pero de la columna E. terminando de pegar se recorre nuevamente a la columna C. y de ahí digito un 2 (consecutivo) y vuelve hacer el mismo proceso. Hay alguna manera de poder poner los consecutivos de manera automática, al yo poner en la celda C17 el numero 1, y donde se active la celda de la columna C, poner el consecutivo siguiente. y como limite la celda J2. en donde estará el límite ejemplo 15. es…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 478 visitas
    • 1 seguidor
  25. Started by el paco,

    Hola a todos, trasteando por el foro he encontrado una macro que enumera las filas automaticamente y (con tu permiso MacroAntonio) la he adaptado a mi hoja que registra las facturas para calcular el iva soportado. El problema es que en el archivo de MacroAntonio las numera perfectamente y en el mío que es idéntico, (sólo cambia el rango) da un error. La numeración debería empezar en el rango B y la fila 14. La macro está en el modulo 3 y la he asociado al botón "salir" del userform para que al cerrar el formulario se enumere la fila. Quizas no esta en lugar adecuado. Agradecería una ayudita con este error ya que me he bloqueado. Un saludo a todos. Facturas 2013.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 11.5k visitas

Información básica de protección de datos

  • Responsable: Sergio Andrés Celemín
  • Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.
  • Legitimación: Consentimiento del interesado.
  • Destinatarios : Hetzner Online GmbH.
  • Duración: Mientras se conserve este post o hilo en la comunidad, o decidas eliminar el comentario.
  • Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del email [email protected]

Información adicional: Encontrarás más información en la política de privacidad.