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?
8682 temas en este foro
-
Buenos días, Lo que sucede es que estoy teniendo problemas con una macro que estoy ejecutando pues me aparece el error que hace referencia a que el procedimiento es demasiado largo, no he podido reducirlo pues son al rededor de 270 variables que debo incluir, en el archivo adjunto incluyo una pequeña parte de esta macro donde solamente relaciono 2 variables y corre a la perfección. En general, lo que pretendo es pasar de un documento a las 270 variables al oprimir el botón "Formato". He intentado dividir el procedimiento en varias partes pero no lo he logrado, quisiera pedir su colaboración con este tema pues por más que lo intento no lo he conseguido. Este código es e…
-
0
Reacciones de usuarios
- 18 respuestas
- 3.4k visitas
-
-
Cómo simular con código VB el pulsado de teclas de función Hola, Tengo esta necesidad. En una función de VB necesito que la fórmula que hay en una celda que se ve como texto se reemplace por un valor y se copie al resto de celdas de esa misma columna. La fórmula en cuestión viene escrita en un fichero .txt desde un ERP, por lo cual no se ejecuta automáticamente. Mirando las audas de VB para Excel he visto la función sendkeys y estuve haciendo pruebas pero no acaba de funcionar correctamente. La secuencia de lo que tengo que hacer es: 1. situar el cursor en una celda (BR6) 2. pulsar F2 (para editar la fórmula) 3. pulsar Intro para pegar el valor en la celda 4. co…
-
0
Reacciones de usuarios
- 1 respuesta
- 3.4k visitas
-
-
Hola a tod@s Tengo un formulario con varios TextBox y un Label. Tengo la siguiente instrucción para que dependiendo de la pantalla, y su resolución, este formulario se expanda. Pero lo que no consigo, porque no se como se hace, es que los TextBox y el label, se centre automáticamente dentro del formulario. Gracias anticipadamente por vuestra ayuda. Private Sub UserForm_Initialize() Me.Height = Application.Height Me.Width = Application.Width End Sub
-
0
Reacciones de usuarios
- 2 respuestas
- 3.4k visitas
-
-
Ante todo un cordial saludo... Estoy creando un archivo excel 2010, donde debo llenar una base de datos con informacion referente a clientes y el estatus de reparacion de sus dispositivos mobiles. (para uso personal: soy tecnico). Para dicho fin he seguido un tutorial, sin embargo el resultado no es exactamente el esperado. entiendo gran parte del codigo, pero hay errores y funciones que desearia agregar y no encuentro como. Con referencia a los errores. Cuando intento escribir en el combobox el codigo de registro para un nuevo cliente, este autocompleta la informarcion con la de un cliente ya agregado. segundo; si solo por error guardo la informacion desde este punto, …
-
0
Reacciones de usuarios
- 8 respuestas
- 3.4k visitas
-
-
Buenas tardes Disculpen mi presencia seguida, pero estoy haciendo varias macros y a veces se me hace lagunas en el cerebro. Ahora mi cuestión es: 1° El desarrollo: Estoy haciendo una macro para convertir un archivo de Excel a CSV, hasta acá no tengo problemas. Pero resulta que ese archivo tiene que subirse a Dropbox. Me pregunta es si la persona no tiene instalado en su equipo la aplicación de Dropbox, que genera la carpeta para que al guardar ahí, automaticamente se sincroniza con la nube, existe algo que se pueda programar desde VBA para mandar ese archivo a la nube o se necesitaría ya de .net? Gracias
-
0
Reacciones de usuarios
- 0 respuestas
- 3.4k visitas
-
-
Estimados Amigos: Una vez mas quisiera molestarlos con el siguiente caso: necesito obtener registros de varias tablas de Access e insertarlas en determinadas celdas de excel a paratir de un solo dato del registro, en el archivo adjunto tengo un ejemplo que si funciona, pero me parece muy improvisado, o como decimos en mi país "chapuceado" ya que lo que estoy haciendo es llamar varias macros por medio de un boton, lo que quisiera saber es si es posible abrir una sola vez la base de datos y luego recorrer e importar los datos de las diferentes tablas y luego cerrarla, para no hacer lo que yo tengo. ¿Es eso posible? Saludos cargar formulario.rar cargar formulario.rar
-
0
Reacciones de usuarios
- 2 respuestas
- 3.4k visitas
-
-
Hola necesito ayuda para crear una base de datos con macros y botones en exel donde me refleja las entradas salidas y un stock minimo asi mismo como crear mensajes de error y todo lo demas paso a paso
-
0
Reacciones de usuarios
- 1 respuesta
- 3.4k visitas
-
-
Buenas chicos tengo el siguiente problemilla. Mediante una macro intento acceder a un archivo csv. delimtado con puntos y comas. y al usar Workbooks.Open Filename:="C:\Users\pc\Desktop\stock.csv" me la abre mal Si la abro normal me la abre perfectamente, he intentado un par de cosillas pero nada fracaso total. Si podéis arrojarme un poco de luz sobre esto os lo agradecería mucho. Un saludo.
-
0
Reacciones de usuarios
- 2 respuestas
- 3.4k visitas
-
-
Hola a todos. Soy nuevo en esta comunidad y quiero pedirles ayuda, tengo una macro en la que quiero manejar la entrada y salida de activos, tengo resuelto el tema del ingreso de un nuevo registro a la base de datos pero aun no he podido generar una consulta que me traiga los datos asociados a un serial determinado, me explico puedo ingresar un registro nuevo pero quiero hacer una consulta para saber si ya he registrado un activo determinado para luego solo actualizar los campos de hora de ingreso y hora de salida, la llave principal de la tabla que tengo en access es el serial por lo que no podria repetir este campo y por esta razon quiero hacer la busqueda en la tabla pa…
-
0
Reacciones de usuarios
- 6 respuestas
- 3.4k visitas
-
-
Hola! Necesito crear alrededor de 120 libros, los cuales deben contener dos hojas cada uno. Dichas hojas son extraídas de dos libros diferentes. Lo que estaba haciendo era crear, a partir del "libro 1", un archivo por cada hoja que contiene dicho libro, usando una macro. Luego, abría cada uno de esos archivos y movía, manualmente, la hoja que les correspondía del "libro 2". Es importante mencionar, que tanto el "libro 1", como el "libro 2" contienen 120 hojas, las cuales pertenecen a cada nuevo archivo. ¿Existe alguna forma de crear los 120 archivos de forma automática? Desde ya agradezco cualquier información que me puedan aportar.
-
0
Reacciones de usuarios
- 7 respuestas
- 3.4k visitas
-
-
Es la primera vez que escribo en este foro, y supongo que se notará. A base de leeros y del "corta+pega", he hecho una macro que funciona correctamente para lo siguiente: Tengo un archivo excel con varias pestañas. Me situo en una de ellas, y con la macro que diré, pulsando "Ctrl+s", me envía un mensaje de mail (outlook 2003), al destinatario que le digo, con el asunto que le digo y con un archivo excel que sólo es la pestaña en concreto en donde me he situado para pulsar "Ctrl+s". Además, después me elimina el archivo temporal creado con ese archivo enviado (esa pestaña). Va muy bien!!! (gracias por dejar copiar). PERO ahora pretendo otra macro, con eso mismo, PERO …
-
0
Reacciones de usuarios
- 1 respuesta
- 3.4k visitas
-
-
Hola a todos, quisiera que me ayudaran para poder realizar una una macro que al hacer click en un Botón de Comando que esta puesto en un UserForm me permita examinar el disco C: y de este escoger un documento cualesquiera y adjuntarlo o importarlo o por ultimo grabar el path en un TextBox. Saludos a todos nuevamente.
-
0
Reacciones de usuarios
- 2 respuestas
- 3.4k visitas
-
-
Hola a todos; Me gustaría añadir al formulario que he adjuntado la función minimizar. Este formulario tiene una macro que redimensiona el formulario, hago este comentario por si hay incompatibilidad. Saludos a todos y buen día o tarde. Minimizar.xlsm
-
0
Reacciones de usuarios
- 5 respuestas
- 3.4k visitas
- 1 seguidor
-
-
Buenas noches. Maestros quisiera saber si se puede volver dinámico el rango a la derecha la propiedad RowSource de un ListBox. Es que tengo una base de datos a la cual de vez en cuando se le agregan columnas nuevas y quisiera se ampliara la selección a la derecha como lo hace hacia abajo. Ejemplo ListBox1.RowSource = "A4:End(xlToRight)" & Range("A3").End(xlDown).Row Algo así, no se si se podrá.
-
0
Reacciones de usuarios
- 15 respuestas
- 3.4k visitas
- 1 seguidor
-
-
Hola: Como veréis, este código abre un archivo cuya ruta este en la celda seleccionada. Quisiera, si es posible, abrir dicho archivo pulsando doble click sobre la celda donde esté la ruta. ¿Es posible? (No veo necesario adjuntar archivo, pero si es necesario me lo pedís) Saludos. Public Declare Function ShellExecute Lib "Shell32.dll" Alias "ShellExecuteA" _ (ByVal hwnd As Long, _ ByVal lpOperation As String, _ ByVal lpFile As String, _ ByVal lpParameters As String, _ ByVal lpDirectory As String, _ ByVal nShowCmd As Long) As Long Function Abrir(prog_o_file As String) ShellExecute 0, "Open", prog_o_file, "", "", 1 End Function Sub AbrirPr…
-
0
Reacciones de usuarios
- 3 respuestas
- 3.4k visitas
-
-
Buenas tardes Acudo nuevamente a ustedes esperando puedan ayudarme a realizar lo siguiente He generado una tabla dinámica desde una base de datos, la cual tiene el producto, suma de costo y la otra suma de costo2 (columna que es el porcentaje total en) lo que deseo es que filtre porcentajes de la columna costo2 (los porcentajes) según los valores A : <= 80% B : >80% y <=90% C : >90% lo intentado hacer pero me sale error al momento de ejecutar prueba-filtro.xlsm
-
0
Reacciones de usuarios
- 2 respuestas
- 3.4k visitas
-
-
Buenas estimados: Esta vez vengo para que me ayuden con algo que no encontre información. resulta que tengo un formulario con un combobox que carga los años, desde el 2013 hasta 2020, lo que quiero es que al momento que el formulario cargue, automaticamente se seleccione el año en curso. en este caso seria 2013. Esto seria para no estar seleccionando a cada momento 2013. Espero haberme explicado bien. Les agradezco. Saludos
-
0
Reacciones de usuarios
- 1 respuesta
- 3.4k visitas
-
-
Expertos, alguien sabe como puedo inmovilizar un grafico, ya busque por todos lados y la posta que no encuentro nada, me pueden guiar o dar una idea de donde puedo buscar esto. Gracias, saludos. Gerardo!
-
0
Reacciones de usuarios
- 0 respuestas
- 3.4k visitas
-
-
Retomo el tema de un compañero, alguien sabe donde se puede encontrar o que tenga un listado en excel o txt con los PAISES, ESTADOS(O PROVINCIAS O DEPARTAMENTOS) Y MUNICIPIOS(O DEPARTAMENTOS) a nivel mundial. O una base de datos, y que este relacionado es decir filtro país Estados Unidos me salgan solo los estados, ejemplo Florida y todas la ciudades, Miami, etc. Ejemplo CITYNAME STATE STATE_TYPE COUNTRY COUNTRY_CODE ARROYOFRIO TERUEL Province SPAIN ES AZAILA TERUEL Province SPAIN ES …
-
0
Reacciones de usuarios
- 1 respuesta
- 3.4k visitas
-
-
hola, buenas noches quisiera y me apoyen a solucionar dado que quiero copiar la tabla 1 del libro "libro a cargar" y poner en el libro "prueba de carga" para poder utilizarla en el listbox del formulario, dado que con la macro que utilizo no copia en formato de tabla haciendome imposible cargarla al listbox. adjunto los archivos ; espero y me puedan brindar su ayuda. gracias Mis documentos.rar
-
0
Reacciones de usuarios
- 3 respuestas
- 3.4k visitas
-
-
Hola, tengo este pequeño código, pero... al ejecutarlo se me queda el puntero del ratón (en círculo)girando y tengo que salir con CERRAR SESIÓN. Podéis ayudarme de forma muy sencilla ? mi código es este: Private Sub WorkSheet_Change(ByVal Target As Excel.Range) If Range("$L$7").Value = "1" Then Call Macro18 End If End Sub Sub Macro18() Application.ScreenUpdating = False Dim Str1 As String Dim Str2 As String Dim resultado1 As Long Str1 = Range("C8") Str2 = Range("L9") resultado1 = StrComp(Str1, Str2, vbTextCompare) Range("N9") = resultado1 + 1 Sheets("Hoja1").Select Application.ScreenUpdating = True Range("A1").Select End Su…
-
0
Reacciones de usuarios
- 4 respuestas
- 3.3k visitas
-
-
Hola a tod@s mi pregunta es la siguiente: Quiero poner caducidad a un libro de Excel una fecha en donde se caduque y no puedan acceder al libro. Estuve buscando una macro y pille esta: Private Sub Workbook_Open() Dim FechaCaducidad As Date FechaCaducidad = #5/14/2016# If FechaCaducidad > Date Then MsgBox "Faltan " & FechaCaducidad - Date & " días para su caducidad", vbInformation Else MsgBox "Lo sentimos, pero este libro de trabajo" & vbCrLf & "ha llegado a su fecha de vencimiento", vbCritical Application.DisplayAlerts = False ActiveWorkbook.ChangeFileAcces…
-
0
Reacciones de usuarios
- 9 respuestas
- 3.3k visitas
-
-
Hola amigos tengo un userform con 4 texbox, en el texbox1 coloco un numero entero , en el texbox2 un numero decimal y en el texbox3 un numero en fracción, algo parecido a esto: 2 x 1.5 x 1/2 y cuyo resultado lo debe dar en el texbox4 (el resultado seria en este caso 1.5) estoy usando esta macro pero me marca error. Alguien podra ayudarme de favor. Private Sub CommandButton1_Click() TextBox4.Value = CDbl(TextBox1) * CDbl(TextBox2) * CDbl(TextBox3) End Sub
-
0
Reacciones de usuarios
- 3 respuestas
- 3.3k visitas
-
-
Tengo un archivo que al habilitar contenido me aparece el error Error de compilación: El código de este proyecto se debe actualizar para usarse en sistemas de 64 bits. Revise y actualice las instrucciones Declare y, a continuación, márquelas con el atributo PtrSafe. y me abre Visual Basic para aplicaciones. el código es Private Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Private Declare Function GetWindowRect Lib "user32" _ (ByVal hwnd As Long, _ …
-
0
Reacciones de usuarios
- 0 respuestas
- 3.3k visitas
-
-
hola tengo una duda respecto a la formula R1C1 en vba. grabe mi pimera macro para vincular una hoja que contiene la base de datos con las hojas en donde estos datos se pegan en filas diferentes aunque en la misma columna. el macro recorder me dio esta formula: activecell.formulaR1C1 = "='hojadedatos!R[-5]C[9]" el problema es que no siempre sera el mismo numero para la fila, es decir esta fila va a cambiar para la siguiente hoja que sera: activecell.formulaR1C1 = "='hojadedatos!R[-4]C[9]" existe alguna manera de que los numeros de la fila sean variables para no escribir de nuevo la formula cada vez que cambie de hoja? soy nuevo usando vba y agradeceria mucho me ayudara…
-
0
Reacciones de usuarios
- 3 respuestas
- 3.3k 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.