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
-
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.3k visitas
-
-
Buenas Tardes a todos, necesitaría su ayuda para crear una macro la cual, primero elimine de la celda de email todos los email escritos como [email protected] y no.com, luego que de la celda ID, mire cuales empiezan por una letra y si es así que en la celda empresa ponga si en caso contrario ponga NO, y si una vez eliminados todos los email de la primera parte pues si existe alguna dato en email que aparezca Si en tiene email. Ademas necesitaría que se eliminaran todos las filas que no tengan email, quedado solo aquellas que si tienen email. excel.xlsx
-
0
Reacciones de usuarios
- 2 respuestas
- 1.4k visitas
-
-
Hola a todos! Espero alguien me pueda ayudar. Tengo el siguiente código pero al ejecutarlo coloca la formula con referencias fijas (con signo $) si quisiera que fuera relativa para poder copiar y pegar ¿cómo puedo cambiar el código para que la celda sea relativa o fija? ¿Alguna idea? fil = ActiveCell.Rows.Row Selection.FormulaR1C1 = "=(R" + Trim(Str(fil)) + "C4*8)" Muchas gracias.
-
0
Reacciones de usuarios
- 5 respuestas
- 3.5k visitas
-
-
Buenas tardes, Tengo, en una columna datos del tipo xxxxxxxx/6/3. Necesito recorrer esa columna y modificar esos datos para eliminar todo aquello que esté a la izquierda de la primera barra. Es decir, en el ejemplo quedaría ésto: 6/3. A veces la celda en cuestión no contiene una barra, solo texto o números, en ese caso no hay que tocarla. Lo que necesito es un método rápido para recorrer esa columna y no se cual sería el mejor método pues hay días en los que la hoja tiene muchas filas de datos (cerca de 20.000) y no quiero eternizarme con este proceso. Adjunto fichero en el que muestro un ejemplo más amplio. Gracias por vuestra ayuda y vuestro tiempo…
-
0
Reacciones de usuarios
- 6 respuestas
- 3.2k visitas
-
-
Hola a todos.... Me hicieron una macro para crear un indice con todas las hojas que voy creando y así poder ir a la hoja que busco sin tener que ir una a una. Funcionaba perfectamente hasta ahora. No sé que ha pasado, pero no me funcionan los links que me llevan a cada hoja. Si me podéis echar una mano.... no tengo ni idea de macros. Os dejo el link al libro: https://drive.google.com/open?id=0B9laGIL8gRltNzFYbjJWc2tzVWM Un saludo.
-
0
Reacciones de usuarios
- 4 respuestas
- 2.5k visitas
-
-
Hola Comunidad de AyudaExcel, Tengo una duda con respecto a Macros VBA ya que soy bastante nuevo en esto, estoy creando una macro donde se haga registro de usuarios de X empresa y luego por medio de un ID y con ese ID me busque o me arroje como resultando N cantidades de usuarios y se muestre en un combobox, y en cada textbox me muestre los datos del usuario pero resulta que dentro de cada textbox digamos quiero reemplazar el texto "NombreAntiguo" por "NombreNuevo" por asi decirlo chancarlo en mis terminos, como tendria que realizarlo. He creado 2 botones "Modificar" y "Actualizar" mi duda esta en el boton de "Actualizar". Espero su apoyo para poder compren…
-
0
Reacciones de usuarios
- 4 respuestas
- 14.1k visitas
- 1 seguidor
-
-
Hola buen día...tengo esta macro que envía los datos como lo quiero, incrementando la columna "T" para tomar como referencia de la última fila con datos...como puedo evitar eso, es decir que no me registre nada en la columna "T", y además me sale un mensaje de error al proteger la hoja..es una tabla dinámica donde se debe arrojar los datos...y finalmente que me ordene por fecha que se encuentran en la columna "A" Private Sub CommandButton3_Click() Dim MES As String ' BOTÓN REGISTRAR Dim UltFila As Long 'MANDAR LOS DATOS EN SUS MESES RESPECTIVO MES = ComboBox4.Value If MES <> "" Then Sheets(MES).Activate UltFila = Sheets(MES)…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.2k visitas
-
-
Buenas tardes, tengo el siguiente archivo donde se encuentra una hoja llamada MATRIZ en donde tengo en las columnas los meses de los dos últimos años 2014 y 2015 y en las filas grupos a ser calificados con las letras desde la A a la E, donde E es la peor calificación. Lo que intento, es buscar en cada fila aquellas situaciones donde la calificación D y E se repitan 4 veces consecutivas y sustituir a partir de ese cuarto momento repetido hasta el final de la fila por la peor calificación, en este caso por la letra E, es decir si las calificaciones D y E se repiten en algún momento 4 veces seguidas sustituir a partir de la cuarta repetición por la letra E dejando dicho que…
-
0
Reacciones de usuarios
- 2 respuestas
- 786 visitas
-
-
Buenas.. Este es un pedido o requerimiento que no encontré en el foro. Yo tengo un archivo excel llamado Base.xls donde es mi archivo en blanco o base, es decir como un formulario en blanco.En el cual contendrá varias hojas con títulos en columnas y macros ya que supone empezar a ser una base de datos de algo especifico. Entonces, Yo desde otro archivo el cual llamare INICIO.xls pondré a funcionar un programa. En el mismo tendrá un botón de "+nuevo maquina" por ejemplo. El macro que necesitaría es uno que me copie mi archivo base cree una copia en un lugar especifico y me permita escribir el nombre de la "nueva maquina". Y así tantas veces me copie y renombre …
-
0
Reacciones de usuarios
- 4 respuestas
- 5k visitas
-
-
Hola buen día...tengo esta macro para habilitar y deshabilitar un botón CommandBooton, como seria para hacer pero con una inserción de Forma? If Status = "Admin" Then Hoja28.btn_admin.Enabled = True End If If Status = "usuario" Then Hoja28.btn_admin.Enabled = False End If
-
0
Reacciones de usuarios
- 7 respuestas
- 3.1k visitas
-
-
Buenos días, Tengo un problema que no se resolver y me gustaría saber si alguien puede ayudarme con la solución. Tengo una macro para insertar imágenes, la macro funciona correctamente pero inserta las imágenes vinculadas. Al enviar el fichero por email las imágenes desaparecen. Me gustaría poder modificar la macro para que inserte la imagen rompiendo el vínculo con el fichero origen. He averiguado que para conseguirlo necesito usar el método Shapes.Addpicture, pero no se como hacer las modificaciones en la macro. Podría alguien ayudarme? GRACIAS!!!! Esta es la macro: Sub BorrarImagenes() ''Esta función recorre todas las imagenes del libro activo y las borra. …
-
0
Reacciones de usuarios
- 2 respuestas
- 7k visitas
-
-
Estimados, tengo el siguiente problema: En la hoja “menú” puedo seleccionar entre distintos idiomas (ahora solo inglés, español y alemán). En la hoja “General data sheet” tengo Dropdowns con origen de datos. Deseo que los valores del dropdown también cambien de idioma al elegir otro idioma en la hoja “menu”. Adjunto mi archivo, por el momento solo tengo los datos cargados para el recuadro naranja. Excel 2010 SE puede lograr con las mismas fórmulas o un macro en la hoja o programación VBA? Desde ya estoy muy agradecido TDS consulta.zip
-
0
Reacciones de usuarios
- 2 respuestas
- 647 visitas
-
-
Buenos días, tengo el siguiente código que intenta copiar el mismo rango desde el archivo "DATOS DEL SISTEMA" hacia el archivo "Escenario" en la hoja Datos, siempre y cuando el nombre de la hoja del primero sea igual al encabezado de columna de la hoja Datos del segundo archivo, la intención es que si falta alguna variable el proceso no se detenga y salte al siguiente con datos, y luego en el archivo Escenario, elimine las columnas que queden sin datos, ya que no todos los días hay datos para todas las variables, esto cambia día a día. Necesito que en la hoja datos solo aparezcan las columnas en forma consecutiva co n las que tengan información. El problema es que la macr…
-
0
Reacciones de usuarios
- 5 respuestas
- 2.5k visitas
-
-
quiero que las persona que tengan mi libro y alguien actualice algo los demás los vean desde su casa como seria eso
-
0
Reacciones de usuarios
- 2 respuestas
- 675 visitas
-
-
Os aporto esta clasificación de equipos de la cual se puede adaptar, esta casi echa en vba para evitar el borrado, si alguien la quiere modificar, mejorar, u otra cosa que lo haga Resultados y Clasificacion.xlsm
-
0
Reacciones de usuarios
- 0 respuestas
- 762 visitas
-
-
Buen Día Tengo 5 archivos de excel con infromación diferente pero tienen en común la información de diferentes escuelas ej. Escuela 001, Escuela 002 etc. Podría hacer una macro en la cual de los 5 archivos de excel, en una hoja nueva de excel si yo pongo escuela 001 me salga toda la información de la escuela que esta contenida en los 5 archivos de excel ?? Gracias
-
0
Reacciones de usuarios
- 1 respuesta
- 601 visitas
-
-
Hola buenos días a todos, haber si me pueden echar una manita, les estoy intentando hacer una tabla de resultados y clasificación para un equipo pequeño de fútbol americano de mi barrio de la cual os remito y es que tengo un pequeño problema en cuanto a los partidos perdidos, ahora os cuento, les he puesto el nombre de equipo local y visitante para no ofender a nadie, de momento solo funciona con el equipo local una vez funcione ya lo pasare a los otros equipos. El orden de partidos jugados funciona bien pues al poner el resultado ya suma el partido jugado, ahora bien en cuanto a partidos ganados o perdidos no se como hacerlo Por ejemplo en la jornada 3 pierde…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.9k visitas
-
-
Buenos días a todos...necesito una mano para resolver esto; es lo siguiente, esta macro no me arroja los datos dentro de la tabla, me lo arroja muchos mas abajo, ya intente de mil manera resolverlo pero no llego a la solución...agradecería si pueden decirme donde está el error..la idea es que me arroje los datos a partir de la fila "A7 " y de ahí en adelante..la celda "A7", tendría las fechas seria posible que esto me los ordenes?;.....dejo la macro y el link del archivo..gracias Private Sub CommandButton3_Click() Dim MES As String ' BOTÓN REGISTRAR Dim UltFila As Long MES = ComboBox4.Value If MES <> "" Then Sheets(MES).Activate …
-
0
Reacciones de usuarios
- 6 respuestas
- 1.7k visitas
-
-
Buenas Tardes a todos mi tema a tratar es el siguiente estoy iniciándome en el uso de las Macros para Excel requiero mandar correos a varios usuarios de un listado desde outlook he checado varios ejemplos de este tema sin embargo solo hacen mención de seleccionar las celdas para insertar la información para el tema y el cuerpo del correo, sólo que yo manejo una libro de excel con 6 hojas las cuales están vinculadas con fórmulas y en una de ellas ya tengo trabajando una macro la cual inserta la hora y día en que se realizan las capturas de los registros, en otra tengo varias tablas dinámicas. Mi pregunta o duda es como indico en la macro de que hoja tomará la informac…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.2k visitas
-
-
Hola, En la macro que adjunto al momento de darle doble clic a la casilla de chequeo, excel me pone un check y me lo tacha, al igual que el tema. En qué parte puedo modificar la macro para que no me tache las palabras?? Por favor su ayuda. Check_list_prueba.xlsm
-
0
Reacciones de usuarios
- 0 respuestas
- 602 visitas
-
-
Buenos días, os hago una pregunta estoy limpiando unas macros y quisiera saber sin el Range se puede ejecutar con variable, aquí va una explicación If Range("s50") >= 1 Then Range("U50") = ("=U47+S50") zz=b2 : xx=s2 ' Variables que después toma el range en la sub Call Datos Else: Range("u50") = C:End IF If Range("S2") >= 1 Then 'Range("U2") = ("=U50+S51") xz=63 : zy=76 ' Variables que después toma el range en la sub Call Datos Else: Range("u51") = C: End IF Sub Datos() Worksheets("Hoja2").Unprotect Password:=PR Range("zz:xx") .Copy Sheets("H…
-
0
Reacciones de usuarios
- 6 respuestas
- 2.2k visitas
-
-
Estimados Nuevamente necesito de vuestra ayuda, ya que debo crear la siguiente macro y no se por donde empezar: -Realizar una macro que solicite ingresar un rut y si el rut no esta lo ingrese en la columna A buscando espacios vacios y en caso contrario si se encuentra que arroje un mensaje que diga el rut ya fue ingresado. Ojala me puedan ayudar Saludos meggido
-
0
Reacciones de usuarios
- 2 respuestas
- 2.1k visitas
-
-
Hola. Estoy en un proyecto y me he quedado atascado por un simple código, que seguro que tiene una fácil solución pero que llevo horas intentando resolver. He creado un bucle For next que va cargando en una variable Array la posición de la última celda con datos en distintas columnas, empezando por "A" y hasta el final del bucle. El caso es que donde tengo el problema es en la propiedad "Range", me dice que no coinciden los tipos. Seguro que es por la forma de implementar el código pero es hasta donde sé. Es la primera vez que meto el "Range Rows.Count" dentro de un bucle. Pongo el código aquí mismo, si es necesario subiría el ejemplo. For x = 1 T…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.3k visitas
-
-
Antes que todo un saludo para todos los miembros del foro. Me parece que "Unir dos lineas mediante un conector" es complicado o no se puede hacer, sería maravillo si alguien del foro me pueda sacar de esta duda. Intente hacerlo con el siguiente código: Sub UnirDosLineasConConector() ActiveSheet.Shapes.AddConnector(msoConnectorStraight, 60, 15, 120, 15).Select Horizontal02 = Selection.ShapeRange.Name ActiveSheet.Shapes.AddConnector(msoConnectorStraight, 180, 30, 240, 30).Select Horizontal05 = Selection.ShapeRange.Name ActiveSheet.Shapes.Range(Array(Horizontal02, Horizontal05)).Select Set Conector = ActiveSheet.Shapes.AddConnector(msoConnectorCurve, 0…
-
0
Reacciones de usuarios
- 3 respuestas
- 2.8k visitas
-
-
al ejecuar la siguiente macro, quiero que la hoja1 del libro DATOS, se agregue en el libro ORIGEN, pero no lo hace Sub copiar_Datos() ORIGEN = Application.GetOpenFilename(Title:="Selecciona el archivo ORIGEN", filefilter:="Excel files (*.xls*), *.xls*") DATOS = Application.GetOpenFilename(Title:="Selecciona el archivo DATOS", filefilter:="Excel files (*.xls*), *.xls*") Workbooks.Open DATOS Workbooks.Open ORIGEN info = Excel.ActiveWorkbook.Name Workbooks(info).Worksheets(1).Copy After:=Workbooks(DATOS).Sheets(1) Windows(info).Activate ActiveWindow.Close End Sub alguien que me pueda ayudar para corregir lo que no que …
-
0
Reacciones de usuarios
- 7 respuestas
- 1.7k 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.