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?
8686 temas en este foro
-
Hola otra vez, hace poco pedí ayuda con un botón para que saliese un cuadro de búsqueda e inserción en un rango y me fue bien, pero ahora lo que quiero es ampliar ese rango y no lo consigo. Cambio un dato al código y no hay manera. Ahora me muestra el rango A4:K y quiero que me muestre A4:Q. El cambio lo aplico al texto en color rojo: Private Sub UserForm_Initialize() Set Calculadora = Sheets("Calculadora") Set Pantones = Sheets("PANTONES") K2.RowSource = "PANTONES!" & Pantones.Range("A4:K" & Pantones.Range("A" & Rows.Count).End(xlUp).Row).Address Texto_Change Texto.SetFocus End Sub El archivo que adjunté la otra vez lo he sobreescrito por lo que no p…
-
0
Reacciones de usuarios
- 10 respuestas
- 1.5k visitas
-
-
Buenas tardes Necesito ayuda para crear una macro que me permita generar un boton de busqueda predictiva para que al ingresar la opcion me muestre las posibles respuestas de la base.
-
0
Reacciones de usuarios
- 0 respuestas
- 1.5k visitas
-
-
Muy buenas, Tengo una macro que he podido ver por la red que me permite guardar una hoja de excel en formato pdf y la envia por correo. Lo que neceisto es que al guardar en PDF me permita poder ponerle el nombre de archivo, y no utilizar el mismo siempre y que lo este machacnadop. Os paso la macro ç, por si podeis echarme una mano, soy un usuario basico en esto de las macros y llevo poco timpo, por lo que se me compplica y esta funcionalidad la necesito. Gracias. Sub Saveaspdfandsend() Dim xSht As Worksheet Dim xFileDlg As FileDialog Dim xFolder As String Dim xYesorNo As Integer Dim xOutlookObj As Object Dim xEmailObj As Object Dim xUsedR…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.5k visitas
-
-
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.5k visitas
-
-
nuevamente solicito de su atención, quisiera saber si mediante esta formula que indico: =HIPERVINCULO(IZQUIERDA(CELDA("nombrearchivo"),ENCONTRAR("[",CELDA("nombrearchivo"))-1)&"\Archivo"&$A38&".pdf",$A38&".pdf") también se pueden hacer a nivel de imágenes, por lo que donde se encuentra alojada en una usb o disco externo y por lo general varia la unidad de ubicación dentro de una pc.
-
0
Reacciones de usuarios
- 0 respuestas
- 1.5k visitas
-
-
Hola a todos, Me gustaría que al pulsar una tecla o un atajo de teclado, se le aparezca un mensaje en un MsgBox al usuario de la aplicación ofimática. No sé muy bien cómo plantear el problema. Se me ocurre lo siguiente, pero no funciona: Sub MostrarMensaje() If Application.OnKey Key:="{c}" Then MsgBox "Hola mundo" End Sub Alguien tiene una idea mejor? Gracias.
-
0
Reacciones de usuarios
- 3 respuestas
- 1.5k visitas
-
-
Buena noche, por este medio quisiera pedirles su apoyo u orientación para ver la posibilidad de poder consultar a través de VBA la garantía de un equipo de Dell en su sitio web usando el Service Tag que esta en la columna A y que en la B aparezca la fecha de envío, en la C fecha de Inicio, en la D la fecha de Vencimiento y la D el Código de Servicio Expreso, he investigado pero no he obtenido resultados, el Tag para prueba podría ser 2PTCB2S. Si alguien me puede apoyar con este tema les estaría muy agradecido.
-
0
Reacciones de usuarios
- 5 respuestas
- 1.5k visitas
-
-
Comunidad expertos en Excel, nuevamente recurro a sus conocimientos lo que es que tengo una lista vertical de registros numero de teléfono a la vez también en la primero columna sus códigos y en algunos casos los código se repiten pero con diferente numero de teléfono, ahora mi problema es que al trasponer a horizontal se traspone todo mi idea es trasponer pero de forma personalizada si los código se repiten y tienen otro teléfono que lo trasponga el código y todos los teléfonos que lo corresponda a esa... adjunto el archivo que lo desarrollado pero es como lo necesito. Espero me hayan entendido Gracias, TRASPONER.xlsm
-
0
Reacciones de usuarios
- 8 respuestas
- 1.5k visitas
-
-
Muy buenos días, Les escribo por un tema que llevo dándole vueltas bastante tiempo y que no he conseguido resolver. Se trata de evitar que me "salte" un mensaje de alerta cuando no hay información en la tabla de datos que utilizo para un gráfico. El mensaje dice: "Your formula contains an invalid external reference to a worksheet. Verify the path, workbook and range name or cell reference are correct, and try again" Y como les digo, aparece cuando borro los datos de la tabla del gráfico... Les he adjuntado un ejemplo para que puedan ver mejor a lo que me refiero. Cualquier ayuda estaré muy agradecido. Atentamente, Error.xls
-
0
Reacciones de usuarios
- 0 respuestas
- 1.5k visitas
-
-
Hola, ya solucionado problemas anteriores en este estoy bastante desorbitado porque no se que es lo que sucede... En el Sub Private CalcularCineantropometria me sale el error del titulo... probé cambiando la configuración regional de comas por puntos (por si las moscas), transforme los datos del label a CDbl y nada... ya no se que puede ser. Yo necesito que, a través de los datos que subo, hacer unas cuentas y que me aparezca los resultados en un label. Saludos! PD: al subirlo tuve que sacar otros formularios, aunque se solicite desde este uno solo... ademas de dos macros. Formulario_Cineantropometria.xls
-
0
Reacciones de usuarios
- 4 respuestas
- 1.5k visitas
-
-
Buenos días. Quisiera crear un checkbox que me ocultase o mostrase todas las filas cuya referencia empiece por 2, otra por 3....., pq si lo hago por rango de celdas al insertar una nueva fila tengo que cambiar todo el código de los checkbox. Un saludo y gracias checkbox.xls
-
0
Reacciones de usuarios
- 3 respuestas
- 1.5k visitas
-
-
buenas noches como estan por favor nesecito su ayuda he estado buscando una macro para que me copie desde la primera hoja de excel al resto de las hojas que tenga el mismo archivo y en una celda especifica , pero no he encontrado nada que sea parecido en la web y en varios foro alguien me podria ayudar u orientar gracias por su ayuda Libro2.xlsm
-
0
Reacciones de usuarios
- 4 respuestas
- 1.5k visitas
- 1 seguidor
-
-
Hola. Quisiera solicitar ayuda. Tengo una macro que quiero complementar. La siguiente porción de código compara el contenido de dos celdas de dos hojas diferentes del mismo libro. valorAnterior = B.Cells(filaEncontrada, x + 1) If A.Cells(y + 1, x + 1) <> valorAnterior Then C.Cells(y + 1, x + 1).Font.Color = vbBlue C.Cells(y + 1, x + 1).Font.Bold = True End If [/CODE] Si el contenido es diferente, se marcará en la hoja C el contenido de la celda con negrilla y color azul. Además de esto quiero que la celda quede con hipervínculo que me dirija a la celda de la hoja B, algo así como: C.Cells(y + 1, x + 1) ---->B.Cells(filaEncont…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.5k visitas
-
-
Hola a todos: Necesito de su ayuda para ver que estoy haciendo mal en la siguiente Macro: La hoja destino = INGRESOS La hoja fuente es FACT 005, son varias hojas y cada una de ellas representa una factura, la hoja de ingresos pretendo llevar sólo una sumatoria de cada una de ellas. Sub pasando_INGRESOS() Application.ScreenUpdating = False destino = ActiveSheet.Name primvac = 4 For Each pestaña In Worksheets If pestaña.Name = destino Then GoTo otra: pestaña.Activate Fecha = Range("e19").Value Recibo = Range("d19").Value Codigo = Range("d10").Value Nombre = Range("a11").Value Importe = Range("i29").Value Iva = Range("i30").Value RetIsr = Range("i32") RetIv…
-
0
Reacciones de usuarios
- 5 respuestas
- 1.5k visitas
-
-
Buenas noches compañeros estube tratando de mejorar una reporte en el cual me ayudo Toldeman pero no encuentro la solucion al macro en el cual quiero que en la hoja de ExtraerReporteArticulo poniendo la fecha del dia de hoy supongamos y presioando el boton REPORTE me salga todo un reporte de los clientes que se encuentran en la hoja de ConsolidadoMensual que esten vencidas a la fecha de hoy sus pago ejemplo si pongo 20/12/2012 y presione reporte me vote en la hoja de ExtraerReporteArticulo todas las deudas con sus respectivos datos que esten vencidas a la fecha que ingrese y no me salgas las que estan despues de esa fecha solo las que estan atrasadas , espero de su ayu…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.5k visitas
-
-
Hola a todos los amigos del foro, nuevamente recurro a ustedes los expertos a que ayuden con el siguiente caso: En el formulario que les subo de ejemplo deseo que al usar la función "Buscar", el botón de "Ingresar" se inhabilite, bloquee, o no permita que el dato buscado, por error se ingrese nuevamente o duplique Quedaré muy agradecido al amigo que me ayude. Les saludo. Elmo Rodríguez Form Ejemplo.zip
-
0
Reacciones de usuarios
- 6 respuestas
- 1.5k visitas
-
-
Hola a todos, es de vital importancia para mi crear una macro que ingrese a todos los archivos excel que tengo en una carpeta llamada "D:\ARCHIVOS\" en esta carpeta tengo .XLS y .XLSX , al ingresar a cada archivo la macro debe seleccionar la hoja con de nombre "REGISTRO", después debe realizar una búsqueda que normalmente se realiza con las teclas CTRL+B (BUSCAR) y debe buscar primero una celda que contenga el texto "EMPLEADO", después debe realizar otra búsqueda a una que contenga el texto "DESDE", posteriormente debe bajar una celda (ejemplo si la celda que contiene "DESDE" esta en la celda B5 debe bajar a la celda B6) y seleccionar todos los regis…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.5k visitas
-
-
Hola amigos, he estado intentando todas las formas para finalizar mi base de datos con macros. He avanzado mucho, pero no logro lo siguiente: Tengo una hoja llamada :"formulario" ahí digito los datos para "guardar", "limpiar"o "eliminar"información. Tengo una hoja: "Hnas Total", que es donde tengo la base de datos. Necesito que desde el formulario yo escriba el apellido y ese formulario se llene con la información correspondiente a ese apellido y luego yo lo pueda eliminar. el problema es que puede que hayan tres personas con el mismo apellido y entonces necesito saber la información exacta para eliminar a la persona correcta. La macro de eli…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.5k visitas
-
-
Hola, buen día. Tengo un archivo de proyectos, cuyas etapas y actividades individuales están identificadas con números consecutivos con el siguiente formato: Fila 1 Etapa 1 : 4.28.1 Fila 2 Actividad 1: 4.28.1.1 Fila 3 Actividad 2: 4.28.1.2 Fila 4 Actividad 3: 4.28.1.3 Fila 5 Etapa 2: 4.28.2 Fila 6 Actividad 1: 4.28.2.1 Fila 7 Actividad 2: 4.28.2.2 Fila 8 Actividad 3: 4.28.2.3 El problema deriva en el tiempo que lleva corregir la numeración cuando se inserta alguna actividad o etapa interm…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.5k visitas
-
-
Formulario + base de datos Amigos por favor ayudenme con este tema, Tengo en la hoja uno, un formulario para ingreso de datos, se llama orden de compra, la informacion que se ingresa en este formulario se guarda en un listado de la hoja dos, por medio de un boton. lo que pasa es que en el formulario de la hoja uno, puedo ingresar mas de un articulo en la misma orden, y cuando le doy guardar solo me gusda el primer articulo. como hago para que todos los datos de ITEM CODIGO DESCRIPCION UND CANT Vr UNITARIO Vr TOTAL, se guarden en el listado siguiente. Gracias, Adjunto archivo F.7.4.2 ORDEN DE COMPRA Rev.02-2.xls
-
Hola. Estoy intentando realizar un macro que haga una cuenta regresiva a partir de 10 minutos, hasta aquí, me funciona bien, el problema que estoy teniendo es que si por equivocación vuelvo a pulsar el botón que inicia el cronometro de cuenta atrás, se vuelve a ejecutar y tiempo va mucho mas rápido, algo parecido me ocurre si pulso el botón de parar crono cuando el reloj está parado, aunque aquí el error es 1004. ¿hay alguna manera que no me deje correr una macro si esta ya está funcionando para iniciar el crono y que si ya está parado que no funcione la macro de parar? Gracias de antemano Paco
-
0
Reacciones de usuarios
- 4 respuestas
- 1.5k visitas
-
-
Buenas tardes a todos: No se puede trabajar con rangos protegidos y otros no (editables) en las tablas. (O quizás desconozca la forma de hacerlo). Me han dicho en el foro que con las tablas la única forma de hacerlo es a través de VBA. Y por supuesto recibí con satisfacción la forma de hacerlo. Sin embargo se trataba de una tabla sencilla con apenas 5 columnas. Ahora tengo que hacerlo con una tabla de entre 20 y más columnas y se me complica mucho con el condicional IF y todos los operadores lógicos que hay que escribir. ¿Existe otra forma de hacerlo y que además evite la lentitud que crea tantos operadores lógicos? Muchas gracias Rubén …
-
0
Reacciones de usuarios
- 5 respuestas
- 1.5k visitas
- 1 seguidor
-
-
Hola! Como dice el asunto estoy buscando una función personalizada del tipo =Bold(A1) que devuelva el valor de A1 en negrita. Me estoy volviendo loca y no consigo encontrar la solución! Me echáis una mano? Mil gracias!!
-
0
Reacciones de usuarios
- 10 respuestas
- 1.5k visitas
- 2 seguidores
-
-
Buenas estimados, Es posible reducir el código de la siguiente macro? Los slicers se pre-seleccionan dependiendo del usuario de la computadora donde sea abierto el reporte, el libro está bloqueado con ribbon y pestañas ocultas, el problema del código es que son varios usuarios con diferentes accesos por lo que se puede hacer extenso. Muchas gracias por la ayuda. Sub slicer() ' ' slicer Macro ' Application.ScreenUpdating = False Dim usuario As String usuario = Environ("username") If usuario = "perezq" Then MsgBox "Bienvenido " & usuario Sheets("control").Select With ActiveWorkbook.SlicerCaches("Slicer_País24") .SlicerItems("Costa Rica").Select…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.5k visitas
-
-
Buenas a todos Aunque parezca cargante, daros de nuevo la enhorabuena por el portal creado y las gracias por hacerme participe de el, para utilizarlo en mi dia a dia Mi cuestio es la siguiente De la siguiente tabla, me gustaria que, o bien por proximidad de vencimiento del performance bond o del advance bond, se me avisara dentro de la base de datos cual es el momento de caducidad de los performance bond o advance bond payment No se si seria posible hacerlo de tal manera en que se tuviera como un cajon con contratos, y cuando se acercara la fecha de vencimiento de alguno de los dos anteriores( menos de 2 meses vista) pudiera aparecer una v…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.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 sergio@ayudaexcel.com
Información adicional: Encontrarás más información en la política de privacidad.