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
-
Buenos días, Tengo un formulario en VBA en el cual el usuario introduce 32 valores y el programa compara si hay una diferencia entre algunos de ellos mayor de diferentes parámetros. Tengo una función que pinta el fondo de las textbox de rojo o amarillo cuando se superan estos parámetros. Funciona perfectamente, pero cuando borro uno de los valores introducidos (por ejemplo porque me he equivocado al introducirlo) me salta el error 13 'no coinciden los tipos'. Soy consciente que es porque pasa de comparar dos números a un numero y un "null" pero simplemente quería saber si la función puede esperar a que haya un valor para compararlo y así no tener que rein…
-
0
Reacciones de usuarios
- 1 respuesta
- 749 visitas
-
-
Señores del Foro disculpen la molestia, pero tengo la siguiente situacion y requiero de Uds para solucionarla: Necesito una formula en excel o una macro que cuando yo digite en un cuadro de control de fomulario, el codigo del cliente, el codigo de la mercancias vendidas y la cantidad, me vaya acumulando las cantida por cliente, al frente del mismos y en la respectiva columna del articulo vendido. Adjunto Archivo de mjuestra. Cordial Saludo ARCHIVO PARA ENVIAR.xls
-
Buenas gente, Me he cambiado a la version 2007 del Excel, y he estado leyendo que no soporta esta función. He leído por ahí y no consigo aclararme, asi que he optado al final por pediros un cable. Esta es la sencilla función que utilizaba yo: With Application.FileSearch .LookIn = ThisWorkbook.Path .Filename = Hoja1.Cells(24, 11) & ".xls" If .Execute > 0 Then 'existe archivo = ThisWorkbook.Path & "\" & Hoja1.Cells(24, 11) Application.ScreenUpdating = False Workbooks.Open (archivo) Set xlsheet = ActiveWorkbook.Sheets.Item(1) ThisWorkbo…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
hola. estoy desarrollando un macro que me baje un archivo plano a excel y al bajarlo necesito que me elimine la basura de este archivo plano; pero lo e intentado de varias formas y no e podido eliminar la basura de ese archivo esta fue la ultima forma que intente pero no lo elimina todo me saca erro 91 y no me deja continuar. Sub Macro1() ' ' Macro1 Macro ' ' ChDir "D:\" Workbooks.OpenText Filename:="D:\UFCG1041.PJB", Origin:=xlMSDOS, StartRow _ :=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 1), Array(10, 1), Array _ (43, 1), Array(66, 1), Array(68, 1), Array(89, 1), Array(114, 1), Array(135, 1), Array(137, _ 1)), Decimal…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.2k visitas
-
-
tengo unas macros creadas depende de la info que tengo corro una u otra. pero quiero que si por error preciono la que no necesitaba, la macro no corra gracias por la ayuda Tavo09
-
0
Reacciones de usuarios
- 1 respuesta
- 692 visitas
-
-
buenos días amigos tengo una macro con la cual limpio los espacios innecesarios en celdas, y en la misma otra que luego de borrar espacios coloca las columnas almacenadas en formato texto con formato numérico especificado, es para ver si ahi forma de agilizar y evitar bugs al momento de correrla. Sub ESPACIOS() Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Application.EnableEvents = False ActiveSheet.DisplayPageBreaks = False With ActiveSheet.[A3:U7500] .Value = Evaluate("if(row(" & .Address & "),clean(trim(" & .Address & ")))") Range("D:D,E:E,G:G").Select Selection.NumberFormat = "#,##0" Column…
-
0
Reacciones de usuarios
- 1 respuesta
- 744 visitas
-
-
Hola a todos, vengo en busca de su ayuda. Tengo una carpeta con varios PDF, quisiera listarlos en una hoja de excel, luego identificar los que tengan el mismo nombre y esos que están duplicados o que sean copias (por ejemplo: archivo.pdf y archivo(1).pdf o copiadearchivo.pdf) esos documentos que se llamen igual o sean copias que los pueda unir en un archivo de pdf en otra nueva carpeta. Ejemplo: 1.pdf 1(1).pdf 2.pdf 2.pdf 3.pdf 3(1).pdf 4.pdf Copia4.pdf ... Que la nueva carpeta contenga: 1.pdf [sería la unión de 1.pdf y 1(1).pdf ] 2.pdf [sería la unión de 2.pdf y 2.pdf ] 3p.df [sería la unión …
-
0
Reacciones de usuarios
- 1 respuesta
- 628 visitas
- 1 seguidor
-
-
Estimados mi nombre es Jorge y estoy tratando de ayudar a mi hermano con un excel, el cual tiene como fin entregar facturas lo más rápido posible. Es por esto que pensé en un sistema que me auto completara algunos datos automáticamente, y lo resolví, pero a medias, ya que lo pude hacer solo con fórmulas. (El sistema se basa en un factura la cuál se tiene que autocompletar con datos de dos hojas, "clientes" y "socios", y así sucesivamente) Mi idea es que estas formulas no se vean, por eso pensé en hacerlo por VB, para que así nadie pueda borrar o cambiar estos avances. El tema está en que como dije lo hice con fórmulas, pero me gustaría hacerlo por VB. Ya he intentado …
-
0
Reacciones de usuarios
- 1 respuesta
- 677 visitas
-
-
Hola a todos Tengo un archivo A que quiero copiar en un archivo B. En el archivo A, la fila "X" esta en formato de texto, pero necesito que al copiarlo en el archivo B esté en formato número. Ya he intentado con Selection.NumberFormat = "0" pero no me funciona. La única forma que puedo hacerlo es seleccionando los números, click en la esquina superior izquierda y click en Convertir en Número como muestro en la imagen: ¿Hay alguna forma de hacerlo automáticamente con una macro? Adjunto el archivo de ejemplo. Espero vuestro apoyo. Saludos Frank
-
0
Reacciones de usuarios
- 1 respuesta
- 688 visitas
-
-
Buen Día Mi nombre es Rodrigo Tiburcio y tengo una macro que lo que hace es que en un archivo tengo varios docuementos de excel. El boton lo que hace es que junta todas las hojas de los diferentes archivos en una nueva, el problema es que cuando la intentamos trabajar en otra computadora no corre la macro ya que esta linkeada a que solo lo trabaje en mi computadora. Private Sub CommandButton1_Click() Dim directorio As String Dim fichero As String Dim ficherodondeimportar As String Dim hoja As Worksheet Dim totalhojas As Integer directorio = "ThisWorkbook.Path & " \ " & NombreLibro" ficherodondeimportar = "import…
-
0
Reacciones de usuarios
- 1 respuesta
- 867 visitas
-
-
Buenos días comunidad de Excel. Acudo a vosotros por ayuda, mi formulario no registra la información que deseo agregar, no me aparece ningún mensaje de error y el formulario inicia sin problema alguno. No sé dónde puede estar el error? Por favor vuestra ayuda, no sabría cómo agradecer si me ayudan? Gracias de antemano GASTOS E INGRESOS (Prueba 1).xlsm
-
0
Reacciones de usuarios
- 1 respuesta
- 705 visitas
-
-
Hola buscando el la web me encontré con un generador de etiquetas QR solo que no eh podido adaptarlo a mi proyecto , los codigo qr los genera sin problema , solo que busco que se pasena otra hoja en una celda en especifico segun corresponda al valor ejemplo en la celda A1 tengo el valor 01 y deseo que el el codigo qr generado con el 01 se pase en C1 de la otra hoja , adjunto archivo espero haberme explicado muy bien y que me puedan orientar ya busque otras alternativas pero el que genera qr con formula me hace lento el archivo
-
0
Reacciones de usuarios
- 1 respuesta
- 471 visitas
- 1 seguidor
-
-
Hola Gente, bueno la pregunta es la siguiente: como hacer que en una lista de 5 columnas y 100 filas, seleccione una fila al azar y copie esta fila a otra hoja, se puede hacer un macro, pero no se como. esto es para sacar una muestra aleatoria de materiales, osea tiene Codigo, Descricion, Ubicacion, stock, y lo que necesito hacer es sacar una muestra de 40 articulos, ojala puedan ayudarme.
-
0
Reacciones de usuarios
- 1 respuesta
- 1.8k visitas
-
-
Hola tengo una macro que me importa datos desde un aplicación externa del trabajo, un estilo MSD2, y me vuelca unos datos de fecha pero en formato "17042015", y me gustaría ordenarlos, que creo que eso se hacerlo a través de la opción de grabar macros, y conseguir que me cree una celda combinada que me cuente cuantos de la misma fecha hay y me lo ponga en una celda, es decir algo..... 17042015 datosxxxxx datosbbbbbb) 2 (Esta celda combinada leyendo los datos de la primera) 17042015 datoscccccc datosrrrrrrrr y si se pudieran unificar las filas de las fechas creo que también me v…
-
0
Reacciones de usuarios
- 1 respuesta
- 604 visitas
-
-
Bunas noches, tengo un problema con una macro, ya que no logro que imprima solo una vez los valores repetidos y que en una celda adicional me diga cuantas veces se repitio, alguna funcion o algo para poder hacer esto, puedo ofrecer dinero ?
-
0
Reacciones de usuarios
- 1 respuesta
- 659 visitas
-
-
hola buenas tardes , tengo el siguiente codigo y me gustaria ampliar el rango ,que cambie de columna B a columna A,B,C para poder analizar dichos datos Sub Aleato() borrar_anteriores With Application .ScreenUpdating = False .DisplayAlerts = False '-- ufila99 = 1 + Sheet99.Cells(Rows.Count, 1).End(xlUp).Row tf = Sheets("estadisticas").UsedRange.Rows.Count tc = Sheets("estadisticas").UsedRange.Columns.Count '-- For x = 1 To 20 Do: f = Int((tf * Rnd) + 1) c = Int((tc * Rnd) + 1) Loop Until Sheets("estadisticas").Cells(f, c) <> "" Sheets("analisis").Range("B" & x) = CDbl(Sheets("est…
-
0
Reacciones de usuarios
- 1 respuesta
- 695 visitas
-
-
Buenas noches de nuevo, disculpen la molestia, con referencia al archivo adjunto me gustaria saber como seria posible hacer que del UserForm 4 el CommandButton1 generen el reporte (el cual lo hace sin problemas) pero que incluya filtros, Muchas Gracias de Antemano por su apoyo, Saludos Macro_Excel_Stocks.zip
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Bun dia amigos la pregunta es sencilla; quiero hacerle una modificacion al modulo de consulta, quiero que siempre aparezca el titileo en la casilla codigo de barras y que cuando pase ala casilla en blanco que ingrese la cantidad dentro del modulo y cuando se igrese la cantidad salga el titileo en la casilla que quiero obtener es para que me de paso al siguiente items o codigo de barras por medio del lector gracias Prueba de Despacho2.zip
-
0
Reacciones de usuarios
- 1 respuesta
- 728 visitas
-
-
Buenas tardes, Tengo una tabla en la que capturo bastantes datos relativos a horarios de salida de vehículos y los retrasos que se producen en cada evento de salida. Registro cada retraso en franjas de 15 minutos (0:15), hasta un máximo de 4 horas. En la tabla tengo insertadas en la celdas destinadas a registrar éstos retrasos una lista desplegable que contiene cada uno de esos valores (0:15, 0:30,......,3:45, 4:00). El problema es que la tabla, para que muestre la mayor parte de los datos, tiene aplicado un zoom de 70% y la hora de desplegar la lista en esas celdas hace que los valores de lista se vean demasiado pequeños. Por ese motivo había pensado en que cada vez q…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.9k visitas
-
-
Estimados, me gustaría realizar lo siguiente: Sabiendo yo la clave de protección del libro, deseo: Mostrar hojas ocultas, copiar y pegar (esto sería lo de menos), volver a ocultar la(s) hojas que se mostraron y volver a proteger el libro. Para hojas protegidas : ActiveSheet.unprotect password:="" pero para el libro completo desconozco. Opinen! Gracias.
-
0
Reacciones de usuarios
- 1 respuesta
- 999 visitas
-
-
Me gustaría que me ayuden a desarrollar una macro que a la hora de copiar y pegar conserve el ancho y alto de las celdas. Tengo en mi poder una macro que hace lo que quiero pero funciona así: -Me pide que seleccione el rango(mouse),luego pulso un botón (macro),se abre un inputbox donde me pide seleccionar la celda donde quiero que se pegue el rango(mouse) y luego se pega.Ésta macro funciona bien pero quiero que lo haga de forma directa (SIN que seleccione el rango manualmente y sin que se abra el formulario). Tendría que poner en la misma macro los rangos de copiado y de pegado. Adjunto Libro. 500.rar
-
0
Reacciones de usuarios
- 1 respuesta
- 2.5k visitas
-
-
Hola estoy organizando un torneo de futbol y tengo claro como quiero, el problema que tengo es pasarlo a excel, para que se automatize. ME podríam ayudar, dejo el archivo de lo que quiero. Primero hay una fase regular y luego hay otra de eliminatoria y que permite poner des del primero asta el último. Gracias plantilla lliga.xlsx
-
0
Reacciones de usuarios
- 1 respuesta
- 873 visitas
-
-
Buenas dias amigos. Vengo con un problemita que de seguro es simple, pero no doy con la solucion. Necesito que se busque en una columna la fecha del dia en curso, y al encontrar la fecha, copie los valores a la izquierda (es decir, los Seriales), en una hoja nueva bajo el nombre de "Seriales y la fecha del dia en curso", pero, al copiar los datos, debe dividirlo cada 44 filas (ya que cebe tener encabezado) y brincar a la fila inicial de la siguiente columna, y asi sucesivamente e imprimir esa hoja nueva. Dejo un archivo de ejemplo. Agradecido de antemano por vuestra ayuda. Busqueda creacion e impresion.rar
-
0
Reacciones de usuarios
- 1 respuesta
- 636 visitas
-
-
Hola, para ocultar la cinta de opciones en el libro activo he utilizado el siguiente código, no obstante, aunque me permite pegar datos copiados entre hojas del mismo libro en las celdas desbloqueadas, cuando copio datos de otro libro se deshabilita las opciones de pegado. Private Sub Workbook_Activate() Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" End Sub Os agradezco vuestra ayuda, muchas gracias.
-
0
Reacciones de usuarios
- 1 respuesta
- 450 visitas
- 1 seguidor
-
-
Con mucha pena tengo que decirles que conozco muy poco de macros y es por ello que respuosamente les formulo esta pregunta. Siempre que copio una macho y al ejecutarla me sale el siguiene mensaje:" Error de Compilacion se esperava un End Sub" y me rasalda el Nombre de la Macro. Mis sistema Operativo es Windows 7 El Oficce es 2007 El Error se repite con todas las macros que copio El procedimiento que utilizo para copiar la macro es el siguiene: 1ª Abro un libro de excel 2ª Visual Basic 3ª Herramientas 4ª Macros 5ª Nombre de la Macro 6ª Crear 7ª Copio la Macro "Esta es una macro copiada" Sub MACRO7() Private Sub Worksheet_Change(ByVal Target As Range) If Ta…
-
0
Reacciones de usuarios
- 1 respuesta
- 1.4k 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.