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?
8684 temas en este foro
-
Hola, Les cuento que necesito imprimir una base de datos manteniendo siempre la informacion o columnas iniciales, la cantidad de hojas a imprimir dependera de la cantidad de columans con datos que hallan - estas ultimas varian semana a semana. Adjunto ejemplo: Se debe visualizar en cada impresion las 4 primeras columnas siempre (A, B, C y D), la columna E cambia una vez que se imprimio, pasando a la columna F y asi sucesivamente hasta que no hallan columnas con datos. El area a imprimir para el primer caso A5:E17. Desde ya muchas gracias. Planilla Base Productos SISA.xlsx
-
0
Reacciones de usuarios
- 0 respuestas
- 1.3k visitas
-
-
muy buenas, se que es una tonteria pero no logro dar con el problema. es una macro sencilla para calcular el numero de meses transcurridos desde una fecha, y lo que pretendo es asignar la celda donde está la fecha incial a una variable, pero me da error de tipos muchas gracias Option Explicit Sub DifMeses() ' ' calcula diferencia de meses entre fechas ' Dim Fecha1 As Date Fecha1 = Range(InputBox("donde está la fecha inicial", "Cálculo meses")) ActiveCell.FormulaR1C1 = _ "=DATEDIF(RIGHT(Fecha1,2)&""/""&MID(Fecha1,5,2)&""/""&LEFT(Fecha1,4),TODAY(),""m"")" End Sub
-
0
Reacciones de usuarios
- 10 respuestas
- 1.7k visitas
-
-
Hola, antes que nada, les agradezco el interés en la publicación. Estoy trabajando en el siguiente código: --->>> Sub SoftToken_Test() Dim cObj As Object Dim Programa As Object Dim Proceso As Object Set cObj = GetObject("winmgmts://.") Set Proceso = cObj.ExecQuery("SELECT * FROM " & _ "Win32_Process WHERE Name = 'SoftToken.exe'") For Each Programa In Proceso On Error Resume Next Call Programa.Terminate On Error GoTo 0 Next Set Proceso = Nothing Set cObj = Nothing End Sub <<<--- El cual termina la ejecución del programa en cuestión, pero desearía su ayuda en…
-
0
Reacciones de usuarios
- 1 respuesta
- 810 visitas
-
-
Buenos días, Estoy intentando eliminar todas las filas que tengan en la columna A celdas vacías y duplicadas. Al ejectur ambas macros por separado, Excel no hace nada. Sub Eliminarduplicados() Dim Valor As Long Application.ScreenUpdating = Fale Sheets("Hoja1").Range("A1").Select Do While Not IsEmpty(ActiveCell) Valor = Application.WorksheetFunction.CountIf(Range("A:A"), ActiveCell.Value) If Valor > 1 Then ActiveCell.EntireRow.Delete Else ActiveCell.Offset(0, 1).Select End If Loop Range("A1").Select Application.ScreenUpdating = True End Sub Sub Elimi…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.9k visitas
-
-
Primero que todo un feliz año para todos .... Al declarar una matriz o arreglo en vba no conozco el tamaño de la misma ya que debo procesar una columna de una planilla para conocer el tamaño....que ademas varia mes a mes.....como defino correctamente la matriz "funcionarios" que tendra n filas y 30 columnas ??? puedo usar (despues de conocer la cantidad de funcionarios) algo como REDIM func(cantidadfunc, 30 ) ????? gracias de antemano
-
0
Reacciones de usuarios
- 6 respuestas
- 1.4k visitas
-
-
Hola buenas tardes, espero su ayuda por favor. Lo que estoy haciendo es mostrar en el listbox los datos de la hoja: prueba_guardarotrolibro(TEMP), segun la condicion de la fecha y del combo Lo que deseo es que en el listbox se muestre solo los datos que he seleccionado (N°, Cotizacion, Producto, Costo, Cantidad, Ingreso) Pero para luego pasarlo a la hoja: baseprueba(TEMP), deberia pasar todas las columnas de la hoja en el orden que se encuentra la hoja destino (baseprueba(TEMP)) y que al momento de pasar los datos, en la columna "Estado" cambie de Abierto a Cerrado ESPERO CONTAR CON USTEDES, DE ANTEMANO MUCHAS GRACIAS baseprueba.xlsx …
-
0
Reacciones de usuarios
- 1 respuesta
- 702 visitas
-
-
Buen día, como puedo variar mediante un ciclo for el número de hoja en el codigo siguiente: For m = 3 To 25 Step 2 For I = 1 To ultfila If Hoja3.Cells(I, 1) = Hoja27.Range("D5") Then ..... a algo así: if Hoja(m).cells(I,1) = Hoja27.Range("D5") Then el detalle está que no deseo usar el nombre de la hoja y si uso el indice de hoja al cambiar de posición me cambia el indice y ya no me funiciona, es decir que debe buscar la hoja sin importa sin cambian el nombre de hoja o posición de hoja..
-
0
Reacciones de usuarios
- 2 respuestas
- 831 visitas
-
-
Hola buenos días: Dentro de una hoja de Excel tengo varias columnas con datos otras con fórmulas y otros. Pero hay celdas que tengo que borrar, ejemplo: B8 al B25 esto lo realizo de manera manual. Pero esto mismo lo necesito hacer con diferentes columnas. Existe alguna manera de hacerlo rápido y de manera que con un botón o algo pueda hacerlo automático. - Las columnas a seleccionar y borrar datos son las columnas: B,E,J,N,R,V,Z,AD. a partir de la fila 7 y que termine a la 25 Esperando que me puedan ayudar con esto. Gracias Borrar datos de columnas discontinuas.xlsx
-
0
Reacciones de usuarios
- 2 respuestas
- 550 visitas
- 1 seguidor
-
-
Hola! Ayer este fichero funcionaba a la perfección, pero hoy resulta que tengo 2 macros que no las ejecuta (como si no existieran), pero están en el libro PERSONAL .xlsm, que se abre automáticamente al iniciar Excel. Al seleccionar el botón Macros de la barra Programador, no me aparece ni una sola macro de este libro. que pasóooo???
-
0
Reacciones de usuarios
- 1 respuesta
- 794 visitas
- 1 seguidor
-
-
Buenas tardes amigos espero estén bien Modifique el frmcalendario para que solamente muestre los días Lunes de cada semana, bajo su configuración original resalta diariamente el fondo de los Label sin embargo necesito que resalte exclusivamente los Label (lb1, lb8, lb15, lb22, lb29, lb36) que correspondan al día Lunes de la semana que este en curso y por lo tanto el resaltado del Label en vez de cambiar a diario se haga semanalmente es decir, si hoy es Lunes 7 de Octubre se debería resaltar durante toda la Semana N° 41 el lb8 y el próximo lunes 14 se debería resaltar durante toda la Semana N° 42 el lb15 y asi sucesivamente. CALENDARIO PRUEBA.xlsm
-
0
Reacciones de usuarios
- 2 respuestas
- 681 visitas
- 1 seguidor
-
-
Alguien me puede indicar cómo habilitar o deshabilitar mensajes de advertencia de hipervínculo en programas de Office 2007 Estaria eternamente agradecido. Un saludo.
-
0
Reacciones de usuarios
- 1 respuesta
- 3.1k visitas
-
-
Desearía ejecutar tres acciones diferentes en el mismo evento Private Sub worksheet_change(ByVal Target As Range). Concretamente que al eliminar una celda se eliminen varias celdas de la misma columna o que al modificar un valor se ordenen alfabéticamente varias columnas. Muchas gracias de antemano Probando.zip
-
0
Reacciones de usuarios
- 0 respuestas
- 1.6k visitas
-
-
Buen día a todos, soy principiante en el foro e intermedio en EXCEL, les cuento lo que necesito: Tengo unas bases de datos que contienen una sola columna con unos 100.000 datos (todos numericos) y con esta columna tengo que crear n archivos de n cantidad de datos cada uno (por ejemplo ahora yo copio y pego de a 2.500 datos) alguien me puede guiar como puedo automatizar este proceso??? AHI DEJE EL ARCHIVO ADJUNTO DE EJEMPLO, LO TUVE QUE HACER RAR PORQUE NO LO PODIA SUBIR DE OTRA FORMA saludos Pablo ejemplo 42k de datos.rar
-
0
Reacciones de usuarios
- 3 respuestas
- 1.2k visitas
-
-
Muy buenas tardes! Quisiera saber como hacer un test autocorregible de 20 preguntas en EXCEL 2007 usando botones para la selección de respuestas y que al final me muestre si la respuesta seleccionada fue correcta o incorrecta y que tambien me muestre la puntuacion obtenida por las preguntas respondidas. Ejemplo: 1) ¿Como se llama el perro de mickey? a) Pluto (aqui insertar un boton para seleccionar esta opcion) Rafi (lo mismo para esta y todas las demas) c) peluchin d) bambi e) Bambam Cabe aclarar que serian 20 preguntas con 5 opciones para elegir pero quisiera que en la eleccion de las respuestas sea por medio de un boton donde se pueda marcar una unica op…
-
0
Reacciones de usuarios
- 0 respuestas
- 5.3k visitas
-
-
Hola buen día, disculpen aquí ya tengo esta macro, la cual envia el mail con sus datos adjuntos, pero nada más se lo envia al primer correo el cual se encuentra en la hoja "Reportes", lo que quiero es que también se lo envié al segundo correo, y no se como modificar la macro para esto, esta configurado con outlook, pero la verdad ya no se como hacerle, espero me puedan ayudar, de verdad mucha gracias por sus comentarios. Saludos. MailAdjunto.rar
-
0
Reacciones de usuarios
- 7 respuestas
- 1.6k visitas
-
-
En el archivo "Crear ficha Tecnica 20121125.xlsx", está la hoja "GenFicha" que tiene una figura predefinida ("Prueba1") y en la misma hay un hipervínculo que llama a la Subrutina ("Genera_Ficha") con una variable; lo que se pretende es esta Subrutina abra otro archivo a fin de buscar datos de la variable adjunta ("Prueba1"), esta parte está en desarrollo. La situación es que al llamar la Subrutina se empieza tener en la ejecución del mismo un comportamiento anómalo de tal formar que no se puede ni hacer una depuración (Debugger); caso curioso, la rutina la ejecuta dos veces antes de terminarla. Como puedo hacer para llamar la rutina desde el hipervínculo de la figura a f…
-
0
Reacciones de usuarios
- 2 respuestas
- 2.8k visitas
-
-
Buenas tardes quisiera saber si alguien me podria ayudar con una formula en VBA para acompletar en una hoja , datos de nombres que vengan de otra, anexo hoja en la cual quiero realizar esta operacion ( reporte de pagos empresas ) y otra en donde esta la formula tal y como quiero que quede (listadesplegableconautoajuste) Gracias y Saludos Formato Pagos Empresas.xls ListaDesplegableConAutoAjuste.xls
-
0
Reacciones de usuarios
- 3 respuestas
- 1k visitas
-
-
Hola Buen Dia gente , subo el siguiente adjunto para ver si me pueden ayudar. la siguiente macro consiste en un reporte , el cual los datos que escribo en cada celda y le doy al boton "guardar" me los inserte en una tabla en el sql, aqui el detalle que me inserta los datos repetidamente por ejemplo: En excel 1.Cliente, Dimension,Tipo,Mate 2.Juan....,16-53......,F3....,Piedra 3.Pepe....,15-13.....,F2....,Arena Tabla SQL Juan....,16-53......,F3....,Piedra Juan....,16-53......,F3....,Piedra Pepe....,15-13.....,F2....,Arena Pepe....,15-13.....,F2....,Arena quiero que cada dato que escriba en cada celda me lo mande a la tabla y no me los repita como me pasa ahori…
-
0
Reacciones de usuarios
- 0 respuestas
- 885 visitas
-
-
buenos dias, primeramente agradezco mucho su trabajo por ayudar desinteresadamente a personas como sonostros, en segundo lugar queria pedirle de corazon la ayuda, pues fijese que yo todos los lunes preparo un reporte de facturacion en el cual incluye encabezados, lo que les pido es que si sera posible crear una macro en el cual me genere este reporte.. todos los reportes los hago en un solo libro. le adjunto ejemplo para que pueda ver espero su ayuda FACTURACION.rar
-
0
Reacciones de usuarios
- 0 respuestas
- 1.3k visitas
-
-
Hola a todos, quisiera que me ayuden con un tema, pues quiero crear una clave de acceso a partir de los datos de nombre, apellidos y la serie de disco de la pc, pero esos datos se concatenen y devuelvan la clave pero en hexadecimal, que al introducirlo en un textbox de acceso sea lo corerecto caso contrario se cierre el libro excel. Pues a este acceso lo que le haría diferente seria la serie de disco de la pc porque seria único en diferentes. y así tener una clave de acceso que le proporcionara yo, Obviamente generada en hexadecimal. Agradezco su ayuda de antemano:beguiled:. Saludos
-
0
Reacciones de usuarios
- 0 respuestas
- 1k visitas
-
-
Hola a todos, tengo la siguiente parte de una macro y solicito su ayuda: nombre=prueba.xslx 'creo un objeto: Set XL = CreateObject("Excel.Application") XL.Visible = True 'creo un nuevo libro llamado "prueba", cierro el archivo Workbooks.Add ActiveWorkbook.SaveAs nombre, -4143 ActiveWorkbook.Close 'abro con XL el libro creado XL.Workbooks.Open "prueba.xslx" 'Selecciono la celda "a1" en el archivo prueba creado, hasta aquí no hay problema XL.Workbooks(nombre).Sheets(1).Range("a1", "a1").Select 'aqui está el problema pues al ejecutar estos comandos, estos se ejecutan en el libro desde el que corro la macro 'lo que necesito es que corran desde el nuevo libro "pr…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.3k visitas
-
-
Hola Otra vez, Acabo de escribir (copiando un`poco de aqui y de alli) una macro que llama a un libro y copia sus datos en el libro activo. Como me interesa copiar todas las hojas en función de una condición, establecida en la celda A2 de cada pagina, hay una instrucción macro para cada hoja _origen- hoja destino. Ejecutasa una a una funcionan perfectamente. Para no tener que ejecutar macro a macro, también hay un modulo macro para ejecutarlas a todas, pero este modulo da error de ejecución. Codigo de cada macro: Sub importar_entrelibros_YY() Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Application.EnableEvents = False ActiveShee…
-
0
Reacciones de usuarios
- 1 respuesta
- 798 visitas
-
-
Estimados yo devuelta.... Les dejo esta macro y quiero ver la posibilidad de mejorar la velocidad de respuesta al momento de ingresar una consulta. Al momeneto de ejecutar la macro, muestra la totalidad de datos de la hoja base, pero cunado se ingresa una consulta, en lo texbox, se demora mucho en responder. La encontré en algún lado y la adapte a mi medida. El filtro opera según los datos ingresados: ejemplo Campo cliente: si ingreso la "S", mostrara todo lo que contenga "S", si le agrego una "E", filtrara todo lo que comience o contenga "SE" y así sucesivamente. - - - - - Mensaje combinado - - - - - La bse de datos puede llegara tener mas de 800 filas por mes, e…
-
0
Reacciones de usuarios
- 0 respuestas
- 1k visitas
-
-
Que tal buen día Tengo una base de datos de números y quisiera hacer que del rango donde esta la base da datos si es menor que 15 se convierta a 0 y si es mayor deje el numero que esta en la celda, con siguiente formula se realiza "=Si(C11<15,0,C11)" , pero quiero ver la opción para que lo haga en la misma celda donde esta el numero no hacer otra tabla de numeros. Dejo el ejemplo, a como lo tengo horita Ejemplo 2.xls
-
0
Reacciones de usuarios
- 13 respuestas
- 1.2k 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 sergio@ayudaexcel.com
Información adicional: Encontrarás más información en la política de privacidad.