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?
8680 temas en este foro
-
hola buen día Estoy programando en excel con Vba y tengo una duda, el ejemplo es el siguiente estoy trabajando con dos libros en excel y en un tercer libro tengo que consolidar la información de los otros dos libros, quiero crear una macro que me tome los valores de la siguiente forma libro 1 [TABLE=class: grid, width: 500] [TR] [TD][/TD] [TD]cola[/TD] [TD]colb[/TD] [TD]colc[/TD] [/TR] [TR] [TD]flia1[/TD] [TD]a[/TD] [TD] dip[/TD] [TD]prop[/TD] [/TR] [TR] [TD]fila2[/TD] [TD]b[/TD] [TD]dip[/TD] [TD]prop[/TD] [/TR] [TR] [TD]fila3[/TD] [TD]c[/TD] [TD]dip[/TD] [TD]prop[/TD] [/TR] [TR] [TD]fila4[/TD] [TD]d[/TD] [TD]no[/TD] [TD]prop[/TD] [/TR] …
-
0
Reacciones de usuarios
- 2 respuestas
- 1.1k visitas
-
-
Buen día ¿Cómo puedo hacer para establecer la ruta y/o path en un sitio de Red para conectar una base de datos de Excel con una de Access, me ha funcionado con este código para otra conexión que hice que no es ADO Dim ruta, Año, Mes, Dia, nombre As String ruta = "[URL="file://\\192.168.1.1\c"]\\192.168.1.1\[/URL]Captura" Año = ActiveSheet.Range("AB6").Value Mes = ActiveSheet.Range("AB3").Value Dia = ActiveSheet.Range("AB5").Value nombre = ActiveSheet.Range("A1").Value guardatl = ruta & "\" & Año & "\" & Mes & "\" & Dia libro = ruta & "\" & Año & "\" & Mes & "\" & Dia & "\" & nombre [/CODE] pero al querer …
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
Hola tengo un gran problema En el excel de inventario necesito agregar una columna despues de la ultima empresa que se ingreso y despues copiar datos del excel de guia en esa misma columna y asi para cada empresa que tenga que agregar. ejemplo a mi me llegan varias guias de diferentes empresas entonces tengo una guia madre donde coloco las unidades de cada cosa que piden necesito una macro que en el excel de inventario me cree una nueva columna y que copie los valores en las casillas correspondientes. si no quedo muy claro me preguntan por favor. adjunto excel. ayuda.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
Buen día: Estoy tratando de hacer que en base a una lista (Columna y su estatus (Columna C), se creen tareas nuevas en Outlook, para dar seguimiento al cumplimiento de dicha lista. Para lo cual tengo el siguiente código (extracto de varias muestras que encontré en la web, solo por respeto a los autores): Sub Tarea() ' ' Tarea Macro ' Automatizar la creacion de tareas ' ' Acceso directo: Ctrl+Mayús+T Dim objectOutlook As Object, objectTarea As Object Dim f As Range Set objectOutlook = CreateObject("Outlook.Application") Set objectTarea = objectOutlook.CreateItem(olTaskItem) Range("C11:C64").Select For Each f In Selection.Cells If f.Value = 1 Then …
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
Muy buenas. Espero que puedan ayudarme con lo siguiente. Mi macro crea carpetas segun el rango que seleccione, las carpetas tienen el nombre de cada celda. Dentro de cada carpeta se crean 5 carpetas mas con nombres que yo defini (1,2,3,4,5). (Esto ya lo termine) --------------------------------------------------------------------------------------------------------------------------------- Requiero lo siguiente 1.- Mediante eventos de click movere el cursor a una posición, dará doble click y se seleccionara un texto. (Esto ya lo he hecho) Private Sub DoubleClick() 'Double click as a quick series of two clicks SetCursorPos 200, 100 'x and y position mouse_e…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
Hola. He buscado y rebuscado por Internet, sin éxito, una macro genérica que simplemente copie el contenido de todas las hojas excel (se llamen como se llamen) a una sola. ¿Es posible conseguirla? Subrayo lo de "genérica" para no tener que estar definiendo en el código los rangos a copiar, ni que dependa del nombre de las hojas, ni nada. Como mucho, si hay que poner algo, que sólo sea poner el nombre de la hoja a donde se quieren traspasar los datos y la columna última que contiene los datos. Pero cuanto más genérica mejor. Si alguien puede aportar algo, se lo agradezco. Saludos.
-
0
Reacciones de usuarios
- 4 respuestas
- 1.1k visitas
-
-
Hola amigos, vengo nuevamente con una hoja que estoy elaborando para el rebajo de cuotas de nuestra asociación solidarista, lo que quiero es que al cambiar un numero o fecha las cuotas sean rebajadas automaticamente. Adjunto hoja, en lo que puedan ayudarme se los agradezco o si tienen una idea mejor sea bienvenida. PLANTILLA EJEMPLOxlsx.rar
-
0
Reacciones de usuarios
- 9 respuestas
- 1.1k visitas
-
-
Buenas tardes estimados, de nuevo molestando por acá, estoy tratando de crear un formulario para poder llevar el control de facturas de mis gastos mensuales, pero ya me quedé atorado en el código, lo que quiero es que al momento de usar el combo box pueda empezar escribir el nombre de la empresa y me aparezca y me refleje en un text box el nit de la misma, quisiera fueran tan amables de orientarme en esto. De antemano muchas gracias!!! P.S. Adjunto el documento Dropbox - Ingreso de Facturas.xlsm
-
0
Reacciones de usuarios
- 7 respuestas
- 1.1k visitas
-
-
Busco curso Macros y Programación VBA Buenos días. Busco un curso online de macros y programación VBA para excel 2010. Si podéis por favor aconsejarme alguna cosa de España... no me importa el precio, pero quiero uno que sea bueno de verdad. Es que busco y busco por internet y no acaba de convencerme nada... seguramente porque para empezar no sé si el programa que ofrecen es bueno o no. Muchas gracias
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
-
-
Buenas tardes, tengo 2 hojas, en la 1° tengo una tabla con 5 campos (Cod, Nom, Apell, Area, Pais), en la 2° tengo un buscador, selecciono 1 codigo y me aparecen los demas datos, tambien tiene la imagen de la bandera del pais (B7). Lo que sucede es que no aparece la bandera cuando escribo un codigo en el filtro, pero he probado escribiendo el pais aparte y si funciona. ¿Como podria hacer que al actualizarse B7 tambien se actualize la imagen de la bandera? PD: Adjunto el codigo VBA para la imagen. Actual_Pais.zip Actual_Pais.zip
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Hola Quisiera ir transformando las tablas de votaciones a otra hoja en que se recojan jurado - participante - puntos. Es decir: La tabla de votación viene por los paises-jurados que hacen sus votaciones por columnas. Los paises-participantes son las filas. En el ejemplo adjunto los paises-jurados van en amarillo y los paises-participantes van en azul. Espero que con el fichero adjunto se entinda lo que quiero. Nota: el numero de paises jurados y de paises participantes es variable, cada año varía. Gracias anticipadas pues no sabrìa por donde empezar, no he encontrado por ninguna parte algún ejemplo para ir empezando. saludos Tabla a Puntos.xls
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
tengo esto es un libro: [TABLE=width: 615] [TR] [TD]libro origen[/TD] [TD]libro destino[/TD] [TD]rango origen[/TD] [TD]rango destino[/TD] [/TR] [TR] [TD]c:\user\libro1.xlsx[/TD] [TD]C:\AG\DO\[abc AG1.xlsx]CS'[/TD] [TD]a6:x108[/TD] [TD]a2297[/TD] [/TR] [TR] [TD]c:\user\libro2.xlsx[/TD] [TD]C:\AG\DO\[abc AG21.xlsx]CS'[/TD] [TD]a6:x109[/TD] [TD]a2298[/TD] [/TR] [TR] [TD]c:\user\libro3.xlsx[/TD] [TD]C:\AG\DO\[abc AG31.xlsx]CS'[/TD] [TD]a6:x110[/TD] [TD]a2299[/TD] [/TR] [TR] [TD]c:\user\libro4.xlsx[/TD] [TD]C:\AG\DO\[abc AG41.xlsx]CS'[/TD] [TD]a6:x111[/TD] [TD]a2300[/TD] [/TR] [TR] [TD]c:\user\libro5.xlsx[/TD] [TD]C:\AG\DO\[abc AG51.xlsx]CS'[/…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.1k visitas
-
-
Estimados Un cordial saludo En esta oportunidad solicito de su especial ayuda para poder dar solución a un problema que tengo y no logro solucionar. En mi día a Día debo pasar información de PDF's o Word a programas de textos. Yo uso excel para facilitarme la labor ya que en muchas oportunidades los PDF con cada linea que tiene todos quedan con un salto de pagina el cual me toca quitar manualmente antes de pegar el texto en el programa. Loca esto me quita mucho tiempo y no logro optimizar mi tarea. Me permito adjuntar un excel de los textos que yo pego en el excel y el resultado de como los deseo tener por medio de una Macro o Formula que me permita hace…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
-
-
Hola a Toda la Comunidad, Nuevamente recurro a vosotros para solucionar una pequeñez para vosotros y una montaña para mí. Tengo una hoja para introducir datos que posteriormente son volcados/copiados a otra hoja. Necesito establecer el recorrido de las celdas en la introducción de los datos, obligando al usuario a pasar por las celdas y no olvidarse la introducción de datos. El recorrido de las celdas debe ser: D6-B10-C10-D10-G10-H10-D12-D13-C16-C17-C18-C19-E16-E17-E18-E19-G16-G17-G18-G19-I16-I17 He buscado por todo el foro y no he sabido encontrar una solución viable. Alguno sabe como solucionar este pequeño problema. Gracias anticipadas. Un Saludo Xavi
-
0
Reacciones de usuarios
- 7 respuestas
- 1.1k visitas
-
-
Hola tengo una duda que me esta volviendo loco, porque parace simple pero no consigo hacerlo. Tengo que graficar dos columnas no contiguas de rango variable una en función de la otra. Como veis en el programa, empiezan en la fila 6 y son las columnas 16 y 19. al ser de rango variable, el contador j indica el numero de filas. ActiveSheet.Shapes.AddChart2(240, xlXYScatterLinesNoMarkers).Select StartRange = Cells(6, 16) EndRange = Cells(6, 19) Set a = Range(Cells(6, 16), Cells(j - 6, 16)) Set b = Range(Cells(6, 19), Cells(j - 6, 19)) ActiveChart.SetSourceData Source:=Union(a, He probado definiendo una variable igual a la unión, sin unión, con l…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Buenos dias Tengo una hoja con unas condiciones en una de las celdas, y con una macro quiero que al ejecutarla, se copie las conficiones de la celda F2 al resto de celdas de la columna, pero no hasta el final si no hasta la ultima celda con datos. Tengo este codigo y funciona, pero me aplica con la condicion de la celda F2, es decir Si f2 es menor que E2 ponte rojo, y en la siguiente fila queria que si F3 es menor que E3 ponte rojo, o si es mayor ponte verde, Adjunto el codigo Sub Condicionar() Range("F2").Select Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$F$2=$E$2" Selection.FormatConditions(Sel…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Hola soy nueva en esto y necesito ayuda Tengo una tabla con estos datos en la hoja 1 [TABLE=width: 86] [TR] [TD=class: xl74, width: 31, bgcolor: transparent]1.1[/TD] [TD=class: xl74, width: 31, bgcolor: transparent]1.2[/TD] [TD=class: xl74, width: 27, bgcolor: transparent]1.3[/TD] [TD=class: xl75, width: 27, bgcolor: transparent]1.4[/TD] [/TR] [TR] [TD=class: xl72, bgcolor: white, align: right]7[/TD] [TD=class: xl72, bgcolor: white, align: right]2[/TD] [TD=class: xl72, bgcolor: white, align: right]3[/TD] [TD=class: xl72, bgcolor: white, align: right]1[/TD] [/TR] [TR] [TD=class: xl72, bgcolor: white, align: right]8[/TD] [TD=clas…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Buenos días a todos, de un recién llegado al foro y a la programación en VBA. Ando liado con una macro que me esta dando problemas, no en la ejecución sino en la velocidad. Se va volviendo progresivamente mas y mas lenta en su ejecución. La macro consiste en reunir en una sola tabla datos desde varias. Pero varían su numero de filas. Todo va bien hasta que empieza Buscarv. Este es el código que estoy utilizando para ello. 'para la busqueda Range("Q2").Select ActiveCell.FormulaR1C1 = "=VLOOKUP(RC16, OFFSET(Hoja2!R2C20,0,0,COUNTA(Hoja2!C20),2),2,False)"[/CODE] 'para el autofill lastrow = Range("P2").End(xldown).Row range("Q2"). Autofill Destination:=…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
hola que tal buenas noches tengo una pregunta que he venido modificando en varios temas pero en si es el mismo, la cuestion es como lo indica el tema, que de una hoja de excel donde se capturan los nombres de personas necesito que antes de ingresar un nombre desde un formulario identifique o busque o localice o msgbox el dato que se va a ingresar para que antes de ingresar el dato del formulario lo trasponga a la derecha del encontrado y de lo contrariio pues que lo coloque hacia la ultima fila vacia. Se que suena un poco complicado y raro pero se que se puede hacer por partes para ello necesito me guien. -de ante manos muchas gracias- checarantescedente.xls
-
0
Reacciones de usuarios
- 7 respuestas
- 1.1k visitas
-
-
Hola a todos. Tengo un libro de excel con varias hojas (por ahora son 33, pero si todo va bien llegará a tener cientos de hojas). El libro comienza por tres hojas, que son Resumen, Relación y Recibos. Luego comienza una serie de hojas, que son 001, 002, 003, y así hasta la penúltima, que es la 029 y la última, que es la 999. Lógicamente, las hojas irán aumentando a lo largo del tiempo, o lo que es lo mismo: dentro de un mes, probablemente la penúltima hoja no será 029, sino, por ejemplo, 032. Y así sucesivamente. Dentro de esas hojas, tengo cuatro celdas que normalmente devuelven el valor NO, pero que cuando ocurren ciertos cambios devuelven el valor SI. Pues bien: l…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.1k visitas
-
-
estimados compañeros del foro, si son tan amables de darme sugerencias con una macro,a la cual para mi gusto no le falta nada mas que al copiar a otra carpeta,esta no pierda el ancho de las columnas. esta es mi macro: Sub Salvar() mio = ActiveWorkbook.Name ruta = ActiveWorkbook.Path Workbooks.Add otro = ActiveWorkbook.Name Workbooks(mio).Activate nombre = Range("E4").Value Range("A1:K63").Copy Workbooks(otro).Activate Sheets(3).Select Range("a1").Select ActiveSheet.Paste ActiveWorkbook.SaveAs ruta & "\" & nombre ActiveWorkbook.Close False MsgBox "proceso terminado. El archivo se ha guardado en la carpeta: " & ruta &a…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Buenos días a todos; -En el archivo que subo tiene en la hoja "Arqueo y Ventas" una macro que me muestra al hacer clic con el botón derecho del mouse un menú personalizado. He configurado de forma que si la persona que utilice la macro no tiene privilegios de administrador no pueda acceder a dicho menú. Si lo intenta aparece un formulario donde se debe introducir la contraseña correcta que estableció el administrador. Consulta: Como puedo hacer para que una vez logueado me actualice el menú contextual sin necesidad de que tenga que ir saltando de una hoja a otra. Dejo enlace de un video explicativo: Video Saludos. JExcel.xlsm
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Buenas tardes amigos, Necesito de su ayuda Tengo un formulario en el cual tengo 2 combobox que hacen un buscarv. O sea en el primero elijo el RUC y en el 2do cmbox automaticamente sale la razón social que corresponde a ese RUC. El problema surge cuando lo ingreso manualmente. Ingreso manualmente el ruc, pero cuando voy a ingresar la razon social, se borra el ruc que ingrese y me jala un ruc que ya se encuentra en la base. Quisiera saber si puedo ingresar datos manualmente sin que se cambien los datos que ingrese. Espero me puedan ayudar. Gracias de antemano Control Km. - copia.rar
-
0
Reacciones de usuarios
- 12 respuestas
- 1.1k visitas
-
-
Buena tarde, es un gusto saludarles nuevamente. Acudo a solicitar su apoyo, dado que no he logrado que una macro que tengo, realice lo que necesito. Resulta que necesito que tengo un archivo con dos hojas: INICIO y GUARDAR. En la fila 4 de la hoja INICIO deseo incluir diferentes valores, los que posteriormente, deseo que se copien y peguen en la hoja GUARDAR, sin embargo, necesito que previo a guardar, la macro verifique que la información no haya sido guardada previamente. Para ello, incluyo un valor en la celda F1 ó A4 de la hoja INICIO, y deberá comprobar que éste número no se encuentre en ninguna celda de la columna A de la hoja GUARDAR. Si la mac…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.1k visitas
-
-
Sub Copiarypegar() Application.ScreenUpdating = False 'Range("Q1:EF1").Locked = False 'Seleccionamos todo el área contínua de datos, desde la celda donde estamos situados Range("a12:A30").Select 'seleciona el rango especifico 'ActiveCell.CurrentRegion.Select 'Copiamos Selection.Copy 'Pegamos en A12 de la hoja 2 Sheets("DAILY REPORT").Select Range("A12").Select 'el control se hará sobre la columna A, a partir de la fila While ActiveCell.Value <> "" 'Busca la ultima fila ActiveCell.Offset(1, 0).Select 'si la celda contiene datos, pasa a la fila siguiente Wend ActiveSheet.PasteSpecial Application.CutCopyMode = False 'Hoja1.Rows(12).ClearContents Hoja1.…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k 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.