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. Started by Roxane Mateos,

    Buenas tardes, he generado una plantilla en word para que al seleccionar una fila en excel los datos contenidos en ella se reemplacen en la plantilla, logro hacer que la primera fila llene completo y sin errores mi plantilla, pero al momento de exporar la segunda fila me aparece el error de "El parametro de la cadena es demasiado largo" Sub GenerarWordFila() ruta = ThisWorkbook.Path & "\Marksheet Template2.docx" Set objWord = CreateObject("Word.Application") objWord.Visible = True objWord.Documents.Add Template:=ruta, NewTemplate:=False, DocumentType:=0 For i = 2 To 42 busqueda = Hoja2.Range("D" & i).Text remplazar = Hoja2.Range("C" & i).Text W…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.8k visitas
  2. Aviso que se cómo crear controles en tiempo de ejecución, con nombres específicos para cada uno de ellos; sin embargo quiero saber: Como crear en tiempo de ejecución, eventos en controles, creados también en tiempo de ejecución. Emplear el evento click y doble click a varios controles creados en tiempo de ejecución, específicamente en TextBox. Tengo otra duda es posible de alguna manera utilizar o crear el evento click derecho, veo que predeterminado está click izq, pero el click derecho nada.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2k visitas
  3. Hola buenas Tardes tengo este codigo y solo me funciona para poder seleccionar un archivo TXT, y cargarlo a una tabla en sql server , Me gustaria poder seleccionar varios archivos txt y poder insertarlos a la misma tabla este es el codigo que uso donde podria modificar. Public Function ImportTextFile(cnn As Object, _ ByVal tblName As String, _ Optional FieldDelimiter As String = "|", _ Optional RecordDelimiter As String = vbCrLf) As Boolean Dim cmd As New ADODB.Command Dim rs As New ADODB.Recordset Dim sFileContents As String Dim iFileNum As Long Dim sTableSplit() As String Dim sRecordSplit() As String Dim lCtr As Long Dim iCtr As Long Dim iFieldCtr As Lon…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 762 visitas
  4. Buenas tardes tengan todos ustedes, sin encontrar una solución a mi problema hoy acudo a su apoyo. Tengo el siguiente código que me ayuda a seleccionar varios elementos de una lista desplegable: Private Sub Worksheet_Change(ByVal Target As Range) Dim I As Integer Dim xRgVal As Range Dim xStrNew As String Dim xStrOld As String Dim xFlag As Boolean Dim xArr Select Case Target.Column Case 7 On Error Resume Next Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation) If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub If Intersect(Target, xRgVal) Is Nothing Then Exit Sub Application.EnableEvents = False xFla…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.5k visitas
  5. Hola Amigos, buenas tardes, es posible utilizar la misma sentencia (variables y cadenas guardadas en variables) en varias consultas que debo hacer , ya que imagino debo usar la misma sentencia en cada procedimiento que realice y ya intenté con declarar variables como Public pero no me deja. Estos código los fuí tomando del blog de @avalencia a quien agradezco por compartir https://abrahamexcel.blogspot.com/2019/04/excel-y-mysql-2.html es posible realizar lo que deseo? usar la misma conexión e ir variando en cada procedimiento prácticamente la consulta SQL así como los datos de la tabla donde voy a consultar. adjunto imagen! Gracias!!

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
  6. Started by NoWi,

    Buenas, He buscado por el foro, pero no he encontrado una solución a mi problema. Seguro que es una tontería, pero no logro dar con ello. Tengo un documento de texto. Al filtrar para buscar una palabra, me la encuentra en varias líneas. Ahora necesito sacar parte de esas líneas. Ejemplo: Palabra a buscar: _palabra_ Línea encontrada: texto variable texto.variable_palabra_texto texto variable "12:39 15/04" texto variable Necesitaría el texto que precede a la palabra buscada (de longitud variable), desde el "." hasta "_", la fecha y la hora que están entre "". Luego ponerlo en columnas en una hoja de excel, pero en eso no ha…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1k visitas
  7. Started by ea4djw,

    Hace unos días Antoni me resolvió un problema con un calendario flotante. He utilizado lo mismo en un programa TPV que estoy diseñando y me he estado volviendo loco; El problema que hay es que los botones están en un marco (frame). Aquí mando un archivo donde se ve el problema y no se como solucionarlo. En él van 6 botones; tres de ellos incrustados en un frame; y cuando trato de capturar los parámetros me da los del marco en lugar de los del botón. En los tres que están fuera del marco perfectamente. Help..... Acciones Cortas.xlsm

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.1k visitas
  8. Started by gogua,

    Hola ! Tengo un textbox control activex en una hoja porque no me deja añadirlo como control de formulario. Y cuanod abro el excel desde el webbrowser me sale este mensaje en el control y no me lo muestra. No se pueden mostrar de ninguna forma?

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 6.5k visitas
  9. Buenas noche amigos de Excel Ayuda quisiera que me ayuden completando mi amplicación con la ayuda de ustedes e creado una aplicación que ingresa datos para analizar en varios perìodos, los datos estan en un hoja BBDD, mi objetivo es que al analizar los productos cada periodo y culminarlos quiero pintarlos de acuerdo a dos criteros "suspendido" o "culminado" utilizando el buscador yo digito el "Lote" y doy clik en la lupa y busca el producto pero quiero que al ubicar el "Producto1, Produco2 etc" al selecionar uno de los dos botones de opción "verde o rojo" se pinten automaticamente en la base de datos BBDD todas las filas que buscó. Les agradezco por darme un tiempo e…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 956 visitas
  10. Started by Pirtrafilla,

    Hola a todos. De nuevo por aquí pidiendo ayuda. Nos han cambiado las licencias de Office a Office 365. He revisado las macros y las que me fallan tienen que ver con las que envío correos automatizados. He podido arreglar todas, cambiando el código porque de Office 2013 a Office 365 cambia el código, se usa el objeto CDO.Message. Pero se me resiste esta macro, que envía un correo e incluye como parte del cuerpo del correo un rango de celdas donde hay un gráfico. Os pego el código para ver si me podéis ayudar. Después de la instrucción "ActiveWorkbook.EnvelopeVisible = True" el programa ya no ejecuta nada más. He probado con F8 paso a paso y ahí se detiene. Necesi…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.2k visitas
    • 1 seguidor
  11. Buenas tardes expertos, tengo un problema con el formulario presisamente al momento de seleccionar el desplegable de la hora me muestra bien lista de hora pero cuando selecciones una de ellas se convierte en decimales. muchas gracias por ayuda , los adjunto el archivo. BASE DE DATOS GESTION HUMANA (SERTOCON24).xlsm

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 2.6k visitas
  12. Started by jotaeme,

    Estimados Espero estén bien de salud ante esta pandemia que nos azota En materia, me marca error de desbordamiento en VBA en la sentencia: dias = DateDiff(parametro, f1, f2) Donde dias es numerico, parametro es string con valor "d", f1 y f2 son tipo date y se obtienen de: f1 = Range("X" & fila).Value f2 = Range("N" & fila).Value donde esas celdas son de tipo fecha en excel Gracias de antemano por la ayuda

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  13. Saludos a todos, es mi primera consulta en el foro. Se trata del siguiente problema: ejecuto el código de un programa sin problema durante todo el tiempo. En un momento dado, al abrir el programa no puedo ejecutarlo. Intento ver el código y aparecen en blanco TODAS las pantallas en las que debería estar visible. He compilado el programa en otro ordenador y sigue con el mismo problema. El problema es grave ya que tengo que recurrir a una copia de seguridad anterior y rehacerlo de nuevo. Agradecería cualquier sugerencia que me ayude a solucionar este problema tan potencialmente peligroso. Muchas gracias. Fernando Cantón

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 819 visitas
  14. Started by Santino,

    Buen día, Tengo un problema tratando de importar los datos de un query de Acces a Excel para poder generar una tabla pivote, no tengo problema generando la tabla pivote, si no en la importación del query a excel mediante VBA. El acercamiento que tuve fue con este código pero al tratar de llamarlo en el Sub, me aparece el error de hace falta un separador de listas o error de sintaxis, esta macro se ejecuta desde Access. Option Compare Database Sub PivotT() SendTQ2Excel(strTQName As String, Optional strSheetName As String) End Sub Public Function SendTQ2Excel(strTQName As String, Optional strSheetName As String) ' strTQName is the name of the table or query y…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 704 visitas
  15. Hola a todos; -Estoy intentando añadir una imagen a los ajustes de impresión y no la carga. No sé donde puede estar el error. Y una duda, ¿como puedo insertar una línea a lo ancho de la hoja?. Lo que tengo ahora mismo solo la inserta a la derecha, podría hacer lo mismo con left y center pero me deja un espacio en blanco y la línea no queda continua. Private Sub btn_Imprimir_Click(): On Error Resume Next With ActiveSheet.PageSetup .PrintArea = ActiveSheet.UsedRange.Address If IsNumeric(Me.TextBox1) Then .Zoom = CDbl(TextBox1) .CenterHeaderPicture.Filename = "C:\Users\Via Norte\Pictures\1.jpg" .RightFooter = "__________________________"…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.2k visitas
  16. Espero se encuentren bien, estoy empezando en el mundo de Excel, en mi nuevo trabajo utilizamos AS400 para eliminar unos materiales, me gustaría crear una macro para realizar esta tarea, pero no se como se conecta Excel con AS400, alguien tiene algún vídeo o los pasos para realizarlo. Muchas gracias.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.2k visitas
  17. Hola a todos Tengo una inquietud, he buscado por los foros en la web, pero no he encontrado algo similar. En el siguiente tema plantee una situación respecto de suma en tiempo real, y las respuestas fueron muy buenas. Mi idea es si se puede hacer lo mismo pero utilizando la opción de contar varios textbox de acuerdo a un criterio. Adjunto un libro con un formulario, si código, ya que no se por donde ir. Las variables a contar serian "V", "F". Saludos Cordiales Pedro Venegas contarsi textbox.xlsm

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.8k visitas
  18. Buenos dias, a todos los expertos tengo una pequeña base de datos cuando realizo la consulta me muestra bien la foto de la persona seleccionada pero solo hay un detalle que cuando de aquella persona no esta registro su foto en la carpeta de fotos me debe mostrar la otra imagen que dice error, gracias por su ayuda y su valioso tiempo adjunto el archivo. Base de datos.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  19. Buenos días, Al extraer los datos de SAP, obtengo más datos de los necesarios y de forma desordenada. Por ello necesitaría realizar una macro para poder automatizar la organización de estos datos tal y como los registro en otro excel. De igual manera sería muy útil si la misma macro me copiara esos datos ya organizados y los ubicará en la siguiente línea vacía de la hoja donde guardo los datos. Me explico. Cuando obtengo los datos de SAP, me aparecen tal que así: De estos datos me interesan únicamente las columnas B, C, F y H, en el siguiente orden: B, F, "Columna vacía", C, H. De tal manera que quede tal que así (ha…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
  20. Started by zero,

    Hola Estimados, pido Disculpas por el Titulo del tema, vi que ya estaba con anterioridad, pero bloqueado, lo que quiero saber es que si hay alguna manera de que al ejecutar la macro en la hoja protegida me aparezca en la cinta de opciones habilitados la fuente el tipo de letra combinar celdas entre otros, ya que al ejecutar la macro aparecen todas esas opciones bloqueadas. adjunto archivo e imagen foro.xlsm

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 4.2k visitas
  21. Hola a todos: ¿como podría concatenar la columna C y D de la siguiente macro de la cual su autor es Antoni, y que me la pegue en la hoja2 columna D? Muchas gracias por su tiempo y su apoyo. Bendiciones. Sub Copiar() Application.ScreenUpdating = False Set H1 = Sheets("ORIGEN") Set H2 = Sheets("DESTINO") H2.Range("A1:Z50000").ClearContents H2.Range("A1:Z50000").ClearFormats fila = H2.Range("A" & Rows.Count).End(xlUp).Row '+ 1 'Range("A" & fila) = "Albaranes" fila = fila '+ 1 ufila = H1.Range("A" & Rows.Count).End(xlUp).Row H1.Range("B1:B" & ufila).Copy: H2.Range("A" & fila).PasteSpecial 'xlValues …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 589 visitas
  22. Started by Celest3,

    Estimados, buenas noches, estoy por teminar un pequeño formulario para ingresar información mas rápido, al abrir el proyecto veran que hay checkbox donde se sleccion segun la condicion si esta con check guarda en la columna J Si caso contrario guarda No. como vera selecciona un trabajador y segun el chequeo se selecciona los check, entonces desde la columna A hasta I se repite los datos solo los J cambia segun el estado del checkBox espero se me haya entendido y me puedan ayudar. saludos a todos Prueba.rar Prueba.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 780 visitas
  23. Hola a Todos Espero estén muy bien junto a sus seres queridos. Favor su ayuda con lo siguiente: Tengo un problema con una planilla excel, desde hace un par de horas dejo de funcionar y cuando abro o cierro el libro me aparece el siguiente mensaje "No se puede encontrar el proyecto o la biblioteca". He buscado en el foro y red, pero no logro dar con una solucion. Segui lo siguiente: ALT + F11 > herramientas > referencias, pero al dar clic en referencias no pasa nada. Al dar ALT + F11, me aparece otro mensaje " No se encontro el modulo". Adjunto el libro. https://1drv.ms/x/s!Aiq68zQ4jy8ShKBFkgvTfFpeIdjmHQ?e=ctaaxx S…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2k visitas
  24. Buenas tardes a todos; -Tengo una duda la cual me gustaría despejar y se trata de lo siguiente. En una macro tengo un formulario con unos campos que me sirven como criterio para hacer una consulta a mi Bd Access. Tengo un checkbox para el campo "fPago" y dependiendo de su valor me genera la consulta. Lo que no sé si es factible hacer una consulta estableciendo dos criterios para este mismo campo. Por ejemplo que la consulta me filtre este campo por el valor "13" y "4" al mismo tiempo. Adjunto macro de ejemplo. Saludos a todos y buen día Consulta.zip

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  25. Buenas tardes compañeros, tengo una consulta y no doy con la solución, por si alguien podría ayudarme. Quiero dar las gracias de antemano. Tengo un excel con un formulario creado en el que doy de alta un usuario con sus correspondientes datos, hasta aquí todo ok. Después tengo un campo BUSCAR, que busco cualquier dato introducido y cuando lo selecciono para modificarlo o verlo me tira un error , y por más que doy vueltas no doy con la solución. También tengo un botón "Generar listado" que me gustaría que al pulsar me cogiera el registro seleccionado y me lo mostrara en un txt para copiarlo a otro programa.(Saben con hacerlo, sería posible). Vuelvo a d…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 895 visitas
    • 1 seguidor

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.