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, tengo una duda de si se puede hacer o no con un listbox. Quisiera seleccionar un celda de un listbox dandole click para poder editarlo. Lo único que consigo seleccionar es la fila pero no una columna en concreto
-
0
Reacciones de usuarios
- 5 respuestas
- 942 visitas
- 2 seguidores
-
-
Buenos días:He leído un poco de como generar un fichero de texto pero no he logrado saber como generar distintos espacios entre columnas. O sea, que salga la columna 1, dos espacios columna 2, seis espacios columna 3.Sería algo así:Nelio 36 LeerYune 34 BailarAgradezco a todo aquel que me pueda ayudar.
-
0
Reacciones de usuarios
- 1 respuesta
- 343 visitas
-
-
Hola, tengo una macro que me copia datos a una hoja dada, pero quisiera que cuando copie los datos y vaya a pegarlos, me pregunte el nombre de la hoja adonde quiero pegar los datos copiados. La macro es simple, ya que entiendo poco de programación Sub Datos_Capital() ' ' Datos_Capital Macro ' ' Sheets("201").Select ActiveWindow.SmallScroll Down:=-69 Cells.Select Selection.Copy Sheets("220").Select -------------->aqui es donde quisiera me preguntase el nombre u hoja a copiar Range("A1").Select ActiveSheet.Paste Range("C2:K2").Select Selection.Replace What:="3", Replacement:="22", LookAt:=xlPart, _ …
-
0
Reacciones de usuarios
- 7 respuestas
- 533 visitas
- 2 seguidores
-
-
Hola que tal, Tengo el siguiente código que me ayuda a exportar una columna cada 100 filas y guardar lo en una carpeta en formato .txt pero cada vez que exporto al final de la línea 100 se agrega un espacio en blanco, me pueden ayudar a quitarlo y que solo queden las 100 líneas que necesito. Adjunto código: Sub ExportarTXT() Dim mPath$, iniCell$, i&, LR&, Vec, j%, iniTime!, R% iniCell = "$G$2" iniTime = Timer mPath = ThisWorkbook.Path & "\Txt\" With CreateObject("Scripting.FileSystemObject") On Error Resume Next: .GetFolder(mPath).Delete True: On Error GoTo 0 .GetFolder(ThisWorkbook.Path).subFolders.Add "Txt" End With LR = Cells(Rows.Count, R…
-
0
Reacciones de usuarios
- 5 respuestas
- 880 visitas
- 2 seguidores
-
-
Hola a todos; Estoy tratando de pintar unos labels vinculando los textBox con los spinButtons, de forma estática lo consigo pero lo que quería conseguir es dar cierto dinamismo ayudándome de dichos spinButtons, Os lo muestro en este gif lo que tengo hasta ahora. Saludos y buen finde a todos. MIntervalos.xlsm
-
0
Reacciones de usuarios
- 5 respuestas
- 746 visitas
- 1 seguidor
-
-
Hola estimados foreros, es posible que me puedan apoyar por favor...no sé y la verdad no entiendo el porqué del error que arroja al querer registrar un nuevo item (sondaje), me explico... en la hoja "BD" hay un botón de "agregar", éste al pincharlo se dispara el formulario con algunos datos de la tabla, luego si es que quiero registrar un sondaje nuevo (botón registrar) , al momento de digitar cualquier tecla... se dispara inmediatamente un mensaje con el error mencionado en el título de este tema. Por lo que estoy estancado en este punto y no puedo seguir avanzando para dejar funcionando el resto de los botones. Adjunto el archivo por si alguien me puede ayudar a sacar e…
-
0
Reacciones de usuarios
- 4 respuestas
- 4.9k visitas
- 2 seguidores
-
-
Hola a Todos y buen dia. Espero y puedan apoyarme con mi tema de antemano muchas Gracias Tengo un codigo de macro que me sale error, y quisiera que alguien me ayudara, Explico que es lo que debe de hacer esa macro. Tengo numeros distintos en la columna A y un importe a buscar en la columna C2 lo que requiero es que en la columna B me señale con una "x" los importes exactos que sumen la celda que se encuentra en la Columna "C2" Anexo Archivo . Libro1.xlsm
-
0
Reacciones de usuarios
- 3 respuestas
- 495 visitas
- 1 seguidor
-
-
Buenas tardes, Necesito ayuda en varios aspectos, me he bloqueado y a pesar de haber intentado varios métodos no consigo llegar a lo que necesito. Adjunto archivo con una pequeña prueba. 1. Necesito insertar un número determinado de filas desde A1 hacia abajo, a partir de la cantidad que ponga en B2, será entre 1 y 6 máximo, pero es por no estar insertando manualmente. Lo he intentado con la siguiente macro, pero siempre tengo que tener la celda bien marcada y con al menos 2 filas ya fijadas para que se quede el mismo formato, no sé si existe otra forma de hacerlo: Sub InsertarFilas() Dim numFilas As Long Preguntar al usuario por el núme…
-
0
Reacciones de usuarios
- 6 respuestas
- 647 visitas
- 1 seguidor
-
-
Estimad@s, buenos días. Debo seleccionar un rango de celdas que contienen formulas desde la celda B2 hasta la I800 (B2:I800). Este rango varía de acuerdo a la información necesaria. Es decir que trae datos desde B2 hasta I3 y/o hasta I800. El tema es que las fórmulas siempre van hasta la I800 y no hasta el dato que quiero que seleccione. En este caso, el dato es un texto que es resultado de una fórmula. Cuando la fórmula no cumple cierta condición se muestra en blanco (" "). Pero para la Macro es una celda con datos. Entonces, cómo seleccionar hasta la última celda que contenga "x" dato que es el resultado de una fórmula. Debo seleccionar B2 hasta la última celda que…
-
0
Reacciones de usuarios
- 6 respuestas
- 572 visitas
- 1 seguidor
-
-
Hola a todos los del foro Requiero un favor de ustedes, con un macro que me convierta el dato de la columna D de la hoja TXT a número con dos decimales. Los números de esta columna todos ninguno tiene separador de decimales pero todos los últimos dos valores son decimales. macro.xlsm Ejemplo D2 = "60225700 debe ser 602,257.00" D3 = "16123300 debe ser 161,233.00" de antemano muchas gracias y espero alguno me pueda ayudar.
-
0
Reacciones de usuarios
- 10 respuestas
- 1.9k visitas
- 2 seguidores
-
-
Hola, estoy iniciandome en el tema de vba y tal, asi que intentaré explicarme lo mejor posible Tengo un boton de comando que me abre un "userform", dentro de ese "userform" hay 2 combobox y varios "label". En el "combobox1" se me abre un listado desplegable donde me aparecen los valores "azul, verde,amarillo,rojo... etc" y el "combobox2" abre un listado con los valores que van del 1 al 100, y ahora viene el problema... yo quiero que dependiendo del valor del "combobox1", me muestre SOLO parte de ese listado de valores del 1 al 100. Es decir, al seleccionar en el "combobox1" el valor "azul" quiero que SOLO me muestre los valores del 21 al 30, si selec…
-
0
Reacciones de usuarios
- 9 respuestas
- 790 visitas
- 1 seguidor
-
-
Buenas, tengo un proyecto con tres userforms a los cuales he podido acceder en un proceso normal. Pero me ha llegado el problema cuando he querido volver a un userform que le habia puesto en .Hide y me saltaba el error de que no se podía mostrar porque ya estaba abierto. He intentado ir cerrando los userform según iba pasando al siguiente mediante una funcion ubicada en un módulo y ahora me da error '91' en tiempo de ejecucion - variable de ojeto o bloque with no establecido. Esta es la funcion que la tengo ubicada en un Módulo. Function FormularioAbierto(ByVal Nombre As String) As Boolean Dim frm As Object frm = False For Each frm In VBA.UserForms …
-
0
Reacciones de usuarios
- 5 respuestas
- 1.3k visitas
- 1 seguidor
-
-
Hola a todos; En la macro que adjunto importo los nombres de un directorio a mi Excel con el siguiente formato: Fecha+un espacio+terminación: Ejemplo: 010223 f.pdf Con la función extrae puedo dejarlo en 010223 pero sigue sin tener el formato fecha. Me puede servir con Macro o también si se puede con Power Query. Saludos a todos y buen día. P.D.: Decir que en la macro ya he importado los nombres de los archivos. MDir.xlsm
-
0
Reacciones de usuarios
- 9 respuestas
- 736 visitas
-
-
Buenas tardes, ¿Me podéis decir si esto lo puede hacer Excel? Tengo una hoja con datos en tres columnas, 2 numéricas y una de texto, el problema que tengo es que estos datos los cojo de una aplicación diferente y se van modificando diariamente, necesito actualizar los datos de estas columnas sin perder las que no se hayan modificado, solo cambiar los que coinciden con el texto y primera columna y añadir si no existe añadiendo los tres campos. Lo he intentado en otra hoja del mismo libro pero no soy capaz. No se si me he explicado, bien. Un saludo a todos, Paco
-
0
Reacciones de usuarios
- 15 respuestas
- 640 visitas
- 1 seguidor
-
-
Muy buenas, No soy experto en Excel, voy buscando información por todos sitios y cogiendo ideas de todos los que sabéis. Estoy haciendo un archivo Excel de facturación y necesito ayuda en un par de cuestiones: Por un lado, a la hora de pasar los datos de una factura nueva ("Guardar factura"), en la hoja "Datos factura" necesito que se copien todas las fórmulas del rango "M:O" y de "Q:S", ahora mismo se copian algunas sí y otras no, no sé porqué. Y por otro, he conseguido realizar una consulta de facturas para poder imprimirlas o guardarlas, pero necesito que se puedan modificar, cambiando los datos de la hoja "Datos factura". No puedo adjuntar el…
-
0
Reacciones de usuarios
- 5 respuestas
- 523 visitas
- 1 seguidor
-
-
Buenos días, Estoy intentando crear una macro para enviar emails a distintas personas, con "varios" ficheros adjuntos a cada persona, de forma que en una cela pueda indicar un patron de los archivos que quiero adjuntar. marcando un fichero en concreto si funciona, pero cuando le digo que sean varios, por ejemplo el registro 1 y el 3 da error. He visto que se puede hacer lanzando un cuadro de dialogo a la hora de seleccionar los ficheros, pero quiero hacer el proceso desatendido. Os adjunto el fichero a ver si alguien puede echarme una mano. Gracias La hoja sería algo parecido a esto: Sub enviar_email() Dim A As Out…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.3k visitas
- 1 seguidor
-
-
Hola foreros, gusto en saludarlos nuevamente, espero puedan ayudarme por favor a optimizar la obtención de datos que vienen desde varias hojas que tienen la misma estructura, el problema es que algunas tienen 3 filas con datos, otra puede tener 2 ó 1 fila con datos, entonces entiendo que con una macro es posible recorrer filas con datos... si lo encuentra ... lo copia y pega en hoja "compilado_HOJAS" quedando ésta como una tabla resumen, el resultado final de cómo debería quedar lo que necesito se muestra en la hoja "compilado_HOJAS", son muchas las hojas desde donde necesito obtener la información, para este ejemplo dejé solo algunas, espero haberme echo entender, pero…
-
0
Reacciones de usuarios
- 2 respuestas
- 386 visitas
- 2 seguidores
-
-
Buenas tardes! me ayudan por favor, Necesito resaltar un rango de fila ej (A1:E1) y dependiendo del valor de E1, si este es "ok" resalte este rango. (Dentro de la hoja completa) Muchas gracias
-
0
Reacciones de usuarios
- 1 respuesta
- 513 visitas
- 1 seguidor
-
-
buenos días, necesito vuestra ayuda llevo días buscando código para terminar un tarificador y no doy con el código. en un formulario necesito que cuando el usuario escriba en un textbox un codigo postal "05495" automaticamente "05" se pegue en una celda excel y de ahi poder hacer un buscarv y sacar la provincia de la tabla "Codigos" he utilizado el codigo Hoja1.Range("d2") = TextBox1.Value para que peque todo el codigo postal en la celda excel, despues con =izquierda() saco los dos caracteres de la izquierda y con un buscarv sacar la provincia de la tabla, pero me sale error. preferiria conocer el codigo que busque la provincia de la tabla el objet…
-
0
Reacciones de usuarios
- 3 respuestas
- 442 visitas
- 1 seguidor
-
-
Buen día, tengo un problema con el cuadro de listbox en un formulario de vb, el cual cuando esta en ejecución funciona, luego de agregar un registro, presiono el botón cerrar del formulario y lo cierra todo el libro de trabajo y sin grabar por favor si me pueden ayudar. El código que estoy usando para cargar el listbox del formulario con 5 columnas de datos es esta, el problema surge cuando cierro el formulario y se sale sin grabar; pasa lo mismo cuando uso el Me. list... Sub cargar_lista() Dim fila As Long fila = Hoja1.Range("A" & Rows.Count).End(xlUp).Row frm_proveedores.lis_proveedores.RowSource = Hoja1.Range("A2:E" & fila).A…
-
0
Reacciones de usuarios
- 1 respuesta
- 545 visitas
-
-
Buenas tardes, Amigos del foro quisiera solicitarles la ayuda para tratar de encontrar la solución al error expuesto en el titulo, les comento un poco estoy tratando de recrear un ejemplo del buen amigo Sergio Campos del sitio ExceleInfo: http://www.exceleinfo.com/buscar-registros-en-tabla-de-access-desde-excel-usando-sql-query-vba-y-ado/ Para lograr una actualización de un campo de una tabla de access desde un Userform, hasta donde el logrado interpretar: definí mis variables, mi tabla de Access, pero me genera un error en al instrucción Update que me devuelve el error: Rs.Open Source:=Query, _ ActiveConnection:=Conn Agradezco cualqu…
-
0
Reacciones de usuarios
- 1 respuesta
- 605 visitas
- 1 seguidor
-
-
Hola a todos, espero que me pueda ayudar con esta macro. Necesito hacer una iteración para saber la sección 2 , os lo explico mejor con un ejemplo de la tabla adjunta. El material, sección1, tipo e intensidad1 los pongo yo. La columna intensidad tabla es la intensidad máxima de la sección 300 de la tabla en la hoja 2. La intensidad2 corresponde a cada sección2 en la tabla de la hoja 2. El número de circuitos se obtiene de dividir la intensida1/intensidad2, al entero superior. La idea es cuando la intensidad 1 sea mayor a la intensidad de la tabla (367), la intensidad 1 se divida por las intensidades2 de la tabla en la hoja 2 y escoja el menor número de circuitos j…
-
0
Reacciones de usuarios
- 15 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Un cordial Saludo Chicos. Necesito de su ayuda con respecto a cómo guardar datos que se han inscrito en objetos (TextBox y ComboBox) de un Userform en otro libro de trabajo de excel (Ej: "Otro Libro de Trabajo. xlms") que se encuentra en la misma ruta de acceso que la hoja de trabajo habilitado para macros donde se creo el userform (Ej: "Libro de trabajo donde esta el userform.xlms"). Consideren que: 1. los datos se guardaran en el "Otro Libro de Trabajo. xlms" Cuando se ejecute el evento Click del objeto "CommandButton_Guardar" del Userform, ejecutando el proceso de abrir el Libro "Otro Libro de Trabajo.xlms" y guardando los datos escritos en los objetos (TextBo…
-
0
Reacciones de usuarios
- 1 respuesta
- 952 visitas
- 1 seguidor
-
-
Buenas tardes, Amigos del foro estuve buscando información del tema en la web, antes de realizar mi consulta en el foro , pero no encontré nada que coincidiera . Detallo mi necesidad: Parte I 1, Deseo "Generar" mediante un botón en una hoja de Excel (Ver botón generar código en el libro adjunto), busque un valor en una tabla de Access" Clave dinámica "de forma aleatoria. la tabla esta compuesta de valores numéricos ordenados en filas y columnas : 2. En la hoja "Base "en la celda E1 colocar el valor del resultado del aleatorio. 3. Devolver el valor encontrado en un msgbox. Parte II 1. En el botón validar se desplego un userform com…
-
0
Reacciones de usuarios
- 4 respuestas
- 643 visitas
- 2 seguidores
-
-
Buenas noches, No sé casi nada de programación en vba comparado con lo que he visto, tengo un error en la ejecución y no consigo adivinar cual es, simplemente quiero extraer datos de una tabla entre dos fechas, si es posible que alguien me ayude. Gracias y un saludo. busqueda fecha.xlsm
-
0
Reacciones de usuarios
- 20 respuestas
- 1.4k 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.