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. Saludos cordiales amigos de Ayuda Excel Tengo un problema con 2 macros que no logro el resultado deseado. Les explico: 1. La Hoja Costos Productos Nacionales debe enviar a la hoja Precios Productos y Servicios la información de cada producto ingresado y lo debe hacer al colocar el Precio de Compra. La información que debe enviar es la contenida en las columnas A, B, C y F a las columnas A, B, C y D de la hoja destino y cursor quedarse en la celda D de esta hoja. 2. La Hoja Costos Productos Importados debe enviar a la hoja Precios Productos y Servicios la información de cada producto ingresado y lo debe hacer al colocar SI en la columna V. L…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 490 visitas
    • 1 seguidor
  2. Buenos días compañeros y buen fin de semana para tod@s. Tengo un problemilla con un excel y no sé como solucionarlo. Soy un poco novato en estos menesteres. En la hoja principal llamada PRUEBA, en la columna E figura el nombre del cliente que será AAAA, BBBB, CCCC, DDDD.... Necesito que se traspasen los datos automáticamente según se vayan rellenando de esa hoja llamada PRUEBA a la hoja del cliente correspondiente AAAA, BBBB, CCCC, DDDD..... Me imagino que la forma de hacerlo es mediante visual y es un tema que desconozco. COPIA FORO.xlsx

    • 1

      Reacciones de usuarios

    • 8 respuestas
    • 753 visitas
    • 2 seguidores
  3. Buenas necesitaria poder fusionar 3 hojas de excel, en las cuales el titulo sea "Seguimiento_" seguido del texto que sea. Intente hacerlo con una macro pero solo consigo que fusione 2 de las 3 hojas. Necesitaría que en la hoja fusionada se ordenasen por la columna cliente y persona de a la a la z. En la hoja de seguimiento anual dejo un ejemplo con una de las personas y la explicación de lo que necesitaría, no se si seria posible probé con varias macros y nada. Muchas gracias un saludo. Organización Formaciones Centro.xlsx

    • 2

      Reacciones de usuarios

    • 18 respuestas
    • 1.1k visitas
    • 2 seguidores
  4. Started by Darack,

    Buen día profesionales tengo un problema tengo un Combobox que tiene ya una lista siendo los datos PC, Operativo y Otro, el detalle esta cuando selecciono otro me habilita o muestra un Textbox donde tengo que escribir el dato o especificar la información pero al momento de guardar guarda el dato del Combobox, me gustaría su ayuda de todos ustedes que son profesionales y tienen conocimientos amplios en el tema y que la misma función sirva al querer modificar el dato si existieran algún error. Saludos.

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 731 visitas
    • 3 seguidores
  5. Hola a todos!! Si el tema está ya en el foro pido disculpas de antemano, porque no lo he visto Tengo el siguiente archivo que me ayudó el maestro Antoni a optimizarlo, (los datos son ficticios). En la macro GUARDAR, me gustaría que en vez de insertar los datos en la fila 2, lo hiciera en la última fila con registros. Me explico. Si tengo los últimos datos en la fila 7, por ejemplo, al dar al botón de Guardar de la hoja formulario, me guardara los registros en la fila 8, luego en la 9 y así sucesivamente. He estado intentando hacerlo yo y no soy capaz...asi que seguiré estudiando. Espero podáis ayudarme para poder seguir aprendiendo. Much…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 865 visitas
    • 2 seguidores
  6. Started by Maku,

    Buenas tardes. He hecho dos macros que imprimen dos pdf de diferentes páginas. Primero hago el pdf: Sub printdep() Dim nombre As String, Ruta As String, nombre2 As String Sheets("Horarios").Select Range("A1:Q42").Select ActiveSheet.PageSetup.PrintArea = "$A$1:$Q$42" Application.PrintCommunication = False With ActiveSheet.PageSetup .PrintTitleRows = "" .PrintTitleColumns = "" End With Application.PrintCommunication = True ActiveSheet.PageSetup.PrintArea = "$A$1:$Q$42" Application.PrintCommunication = False With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 456 visitas
    • 1 seguidor
  7. Started by EdwinGC,

    Buen día comunidad Antes que nada este código lo encontré en la página Mehmet Ali Gokmen y me gustaría editar el llenado del framePerson del formulario frmMain. Para este llenado el ejemplo es tomar del mismo libro una hoja llamada BaseVentan que cuenta con 38 columnas, el framePerson me gustaría llenarlos con la columna 2, 3, 8, 10, 11, 13, 27, 28 y 29, me gustaría que se mantenga toda la visualización y ejecución del userform. Dejo el código espero que me puedan ayudar y de ante mano muchas gracias. '********MOUSE MOVE ICON CODES************************************************************************************************************…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 380 visitas
  8. Hola buenas tardes. Trabajo constantemente con varios archivos que deben ser movidos de una carpeta a otra. Estoy tratando de lograr que desde excel con un botón me abra el explorador y estando ahí poder seleccionar los archivos de mi interés y después de seleccionarlo que los copie. 2. ahora abrir el explorador y ubicar la carpeta (destino) en donde quiero colocar los archivos copiados. todo esto desde el explorador. Ya he logrado hacer el proceso de seleccionar los archivos, copiarlos y seleccionar la carpeta donde quiero que las pegue. El problema es que solo me pega un archivo. Me pueden ayudar con la parte de la estructura para que se p…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 631 visitas
    • 1 seguidor
  9. Started by salvador,

    Tengo una problema, he creado un formulario de una tabla de mas de 10 columnas, y he creado un listbox para buscar, el codigo que adjunto ( busca correctamente), pero cuando pincho encima de del listbox, no trae correctamente los datos a los cuadros de texto del formulario, ¿alguien me puede ayudar? NUMERODEDATOS = Hoja7.Range("B" & Rows.Count).End(xlUp).Row LISTA = Clear LISTA.RowSource = Clear y = 0 For FILA = 4 To NUMERODEDATOS nombre = Hoja7.Cells(FILA, 83).Value If UCase(nombre) Like "*" & UCase(Me.txt_buscar_cliente.Value) & "*" Then …

    • 0

      Reacciones de usuarios

    • 40 respuestas
    • 3.6k visitas
    • 2 seguidores
  10. Started by Pedro Alonso,

    Hola EXCELENTES. Heredé este código. Yo no tengo NI IDEA de programación. Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo errorfecha If Not Intersect(Target, Range("A1830")) Is Nothing Then If Range("A1830").Value <> "" Then If Application.WorksheetFunction.Weekday(Range("A1830").Value, 2) >= 6 Then On Error GoTo 0 MsgBox "No puede ser sábado o domingo", vbCritical Range("A1830").EntireRow.Delete Range("A1830").Select ElseIf (Range("A1830").Value < Date - 7 Or Range("A1830").Value &gt…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 445 visitas
    • 1 seguidor
  11. Buenas noches @JSDJSD espero estes bien, tengo un caso similar al que se planteó en el siguiente hilo https://ayudaexcel.com/foro/index.php?/topic/43761-filtrar-listbox-utilizando-un-combo-box-dinámico/ he intentado modificar el formulario RPAT (frmrpat) para que se adapte a mis necesidades sin embargo no logro resolver los siguientes detalles: 1. Al igual que el compañero que pregunto en el hilo que comente anteriormente también copie y adapte de un tutorial de YouTube la siguiente macro: Private Sub CmdBUSCAR_Click() Dim UFILA As Integer If Me.TextBox11 = "" Then MsgBox "Ingrese el Número de Cédula", vbExclamation End If Exit Sub UFILA = Sheets(…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 560 visitas
    • 2 seguidores
  12. Buenos días: Dentro de un libro tengo una hoja "Datos" en la cual tengo referencias a una ruta "B4" y archivos a abrir (columna C), con una macro puesto en thisworbook (llama a otros archivos), este funciona bien. Los archivos los tengo en la misma carpeta guardadas en mi USB, trabajo siempre en la misma Laptop y por defaul asigna la letra D:, pero por nuevas necesidades debo trabajar en diferentes equipos pc o lap. y mis archivos no abrieron. tube que cambiar la letra de la ruta asignada, con la actual a mi usb manualmente. Se que puedo poner con una macro la ruta actual de un archivo abierto. Worksheets("Datos").Range("B4").Value = ThisWo…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 309 visitas
    • 1 seguidor
  13. Hola amigos!! Regreso algo oxidado con una consulta. La idea del presente archivo es capturar los seriales de unos equipos siempre y cuando cumplan alguno de los patrones que están en la tabla. Al pasar este filtro e ingresar el serial en la columna B (columna detonante para que se ejecuten las macros) se adicionará a los lados del serial, el número que indica la cantidad ingresados hasta el momento y en la otra celda adyacente el serial en formato de código de barras. De igual forma si se borra un serial en la columna B, o se modifica el serial, este deberá hacer lo propio según el caso,sea borrar los adyacentes o actualizar el código d…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 725 visitas
    • 3 seguidores
  14. Hola buenas tardes: Tengo una hoja con una lista extensa de columnas utilizados. tengo que trabajar con ellas de manera individual cada uno tiene un numero de consecutivo en la fila 3 y este es mi guía para este y otros archivos. manualmente estoy recorriendo mi plantilla de columna en la columna en la que voy a trabajar y aveces es confuso. no se si exista una manera en la que pueda seleccionar o indicar que columna utilizare en base a la fila 3 y lo demás se oculten todo esto dentro de un rango ejemplo. de A hasta la L. Que busque dentro de la fila 4 el numero (3) que yo indique en una venta o algo. y si lo encuentra deberá dejar visible esa columna y o…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 482 visitas
    • 2 seguidores
  15. Started by Alfonso5597,

    Hola estimados amigos, de nuevo por aqui para pedirles su colaboracion, si me hacen el favor Tengo un problema con una tpv que estoy desarrollando, , el problema esta en que cuando pulso el comamburton, necesito que la informacion pase a los textboxes, pero no lo consigo, y otra es que cuandolo paso al ticket, no puedo escribir el texto completo en la misma celda, espero y agradezco su ayuda Un saludo TPV

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 585 visitas
    • 3 seguidores
  16. Buenas tardes amigos, tengo una consulta, ¿se podría hacer que un formulario se abra en una parte especificada de de la pantalla?, por ejemplo que se abra en la esquina superior derecha

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 508 visitas
    • 2 seguidores
  17. Hola un cordial saludo a todos, Tengo un libro el cual quisiera que al abrir, abra en pantalla completa total sin la cinta o cintillo donde aparece el nombre del archivo.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 924 visitas
    • 2 seguidores
  18. Hola buenas tardes. por el largo de mis textos es necesario hacer una combinación de celdas. Con la macro en mi archivo he logrado hacer que al seleccionar una celda lo combine con la celda siguiente. me funciona Pero mi necesidad es de poder seleccionar varias celdas continuas oi discontinuas y que se ejecute mi macro en cada una de las celdas. La combinación es de la columna C y columna D. Muchas gracias Combinar celdas seleccionadas.xlsm

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 729 visitas
    • 2 seguidores
  19. Hola a todos Estoy haciendo una rutina en excel para insertar unas imágenes en un archivo Word. Las imágenes las logro insertar pero no se fijan en la linea que deseo sino que se mueven ya sea en líneas anteriores o posteriores y no he encontrado la forma de fijarlas en la linea específica donde son insertadas. Aquí adjunto la rutina que estoy utilizando y además dos imágenes de como queda la imagen insertada y como debe quedar Lo que deseo resolver y para lo cual necesito su valiosa ayuda es saber cómo puedo fijar las imágenes en la línea donde son insertadas. De antemano muchas gracias por su tiempo Daniel ImagenWord.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 376 visitas
    • 1 seguidor
  20. Hola un cordial saludo a todos. Tengo un libro con 365 hojas cada una con nombre de un día mes y año en especifico agradecería me ayuden a como puedo realizar la vinculación de cada hoja (día) para extraer valores totales a otra hoja y obtener los resultados necesarios, ya lo tengo echo de manera manual pero tardo mucho quisiera de su ayuda para no hacerlo de forma manual , ya que es muy laborioso dado que lo tengo que hacer de una por una. NO puedo adjuntar archivos por que tiene un tamaño de 4 Mb. Como podrían ayudarme por favor....

    • 0

      Reacciones de usuarios

    • 21 respuestas
    • 1.5k visitas
    • 4 seguidores
  21. Hola buenas tardes: Tengo una hoja en excel donde listo el nombre de las carpetas que están dentro de una carpeta raíz,por medio de una macro, este me es funcional ya que en ella tambien me lista "subcarpetas" y otras carpeta por columnas. es funcional para conocer las carpetas que existen dentro de esa ruta. Pero por mis labores debo estar revisando diferentes documentos en cada una de estas carpetas y regresar.(dentro del explorador de windows). Esta misma macro seria muy útil que directamente desde esta lista poder abrir cada carpeta o subcarpeta, ya sea con un link en cada carpeta y subcarpeta. Espero me puedan ayudar con esta parte, muchas g…

    • 0

      Reacciones de usuarios

    • 14 respuestas
    • 922 visitas
    • 2 seguidores
  22. Hola que tal amigos programadores por favor me podrían ayudar con una macro que me genere un archivo CSV delimitado por comas, la estructura del archivo CSV no deberá llevar encabezado, los datos del archivo CSV serán obtenidos de la hoja “Datos”. En la columna A: deberá tener la clave clues que se toma de la columna B de la hoja Datos En la Columna B: el Código (son 230 codigos que van del rango G1:IB1 de la hoja datos) En la Columna C: el valor almacenado a su correspondiente al código y clues En la Columna D: el número del mes que se obtendrá de la de la columna E de la hoja Datos En la Columna E: el año que se tomará de la columna F de la hoja…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.4k visitas
    • 2 seguidores
  23. Started by aSeik01,

    Hola me podrian ayudar a corregir esta macro, ya que que he puesto la condicion que no se ejecute por si hay valores vacios en 6 celdas y siempre se ejecuta, comparto codigo: Selection.ClearContents Range("C5").Select Selection.ClearContents Selection.ClearContents Range("C7").Select Selection.ClearContents Selection.ClearContents Range("C8").Select Selection.ClearContents Range("C23").Select Selection.ClearContents Range("C24").Select Selection.ClearContents Range("C39").Select Selection.ClearContents Selection.ClearContents …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 438 visitas
    • 1 seguidor
  24. Hola un cordial saludo a todos. Tengo una hoja con un formato de calendario y tengo 365 hojas cada una con nombre de un dia mes y año en especifico agradecería me ayuden a como puedo realizar la vinculacion de cada dia del calendario con cada hoja respectivamente sin hacerlo de forma manual , ya que es muy laborioso dado que lo tengo que hacer de una por una. adjunto coloco un ejemplo de lo que tengo gracias. Libro1.xlsm

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 490 visitas
    • 1 seguidor
  25. Hola, ¿Cómo podría ordenar una Tabla dinámica por fechas, respetando el orden de las columnas? Dispongo de una Tabla excel que tiene asociada una tabla dinámica. Desde la primera columna de la TD (formato texto) puedo ordenar de mayor a menor o de menor a mayor, pero no puedo ordenar por otra columna que no sea la primera. En concreto lo que necesito es poder ordenar por fecha (Campo 3) de la más reciente a la menos reciente, respetando el orden de las columnas. A través de macros lo he intentado, per no funciona: Sub OrdenarTD() With ActiveSheet.PivotTables("TablaDinámica1").PivotFields("Campo 3") .AutoSort xlAscending, "Campo 3" End…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 634 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.