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
-
Buenos días, Busco hacer una macro que divida los valores de la columna "C" de la pestaña (2) entre el valor constante que le corresponde a esta planta , dato de la pestaña (1) , columna "A". Y devolver los valores resultantes de esta división en la columna "D", pestaña (2). Gracias por adelantado Libro1.xlsx
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Buenos días a todos; -En el archivo que subo tiene en la hoja "Arqueo y Ventas" una macro que me muestra al hacer clic con el botón derecho del mouse un menú personalizado. He configurado de forma que si la persona que utilice la macro no tiene privilegios de administrador no pueda acceder a dicho menú. Si lo intenta aparece un formulario donde se debe introducir la contraseña correcta que estableció el administrador. Consulta: Como puedo hacer para que una vez logueado me actualice el menú contextual sin necesidad de que tenga que ir saltando de una hoja a otra. Dejo enlace de un video explicativo: Video Saludos. JExcel.xlsm
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Sub Copiarypegar() Application.ScreenUpdating = False 'Range("Q1:EF1").Locked = False 'Seleccionamos todo el área contínua de datos, desde la celda donde estamos situados Range("a12:A30").Select 'seleciona el rango especifico 'ActiveCell.CurrentRegion.Select 'Copiamos Selection.Copy 'Pegamos en A12 de la hoja 2 Sheets("DAILY REPORT").Select Range("A12").Select 'el control se hará sobre la columna A, a partir de la fila While ActiveCell.Value <> "" 'Busca la ultima fila ActiveCell.Offset(1, 0).Select 'si la celda contiene datos, pasa a la fila siguiente Wend ActiveSheet.PasteSpecial Application.CutCopyMode = False 'Hoja1.Rows(12).ClearContents Hoja1.…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
-
-
Hola a tod@s. De antemano agradecer por su tiempo en el siguiente inconveniente que expongo. El inconveniente que tengo es que al aplicar el el código en el evento que dejare líneas abajo funciona correctamente, sin embargo cuando selecciono el rango de celdas B9:B18 y borro el contenido, sucede que de manera automática se colorea todo de color rojo en dicho rango. Como solucionarlo?, tomando en cuenta que es necesario que sea un evento. Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If Not Application.Intersect(Target, Range("B15")) Is Nothing Then If Not IsNumeric(Target.Value) Then …
-
0
Reacciones de usuarios
- 4 respuestas
- 1.1k visitas
-
-
Buenas tardes amigos, Necesito de su ayuda Tengo un formulario en el cual tengo 2 combobox que hacen un buscarv. O sea en el primero elijo el RUC y en el 2do cmbox automaticamente sale la razón social que corresponde a ese RUC. El problema surge cuando lo ingreso manualmente. Ingreso manualmente el ruc, pero cuando voy a ingresar la razon social, se borra el ruc que ingrese y me jala un ruc que ya se encuentra en la base. Quisiera saber si puedo ingresar datos manualmente sin que se cambien los datos que ingrese. Espero me puedan ayudar. Gracias de antemano Control Km. - copia.rar
-
0
Reacciones de usuarios
- 12 respuestas
- 1.1k visitas
-
-
Hola, Soy nuevo en el foro. Agradecería vuestra experta ayuda Mi problema es que tengo una macro cuya función es abrir un excel copiar información de este y pegarla en otro libro, y finalmente adjuntar este último a un correo. Esto funcionaba correctamente antes de que me cambiasen al Office 2010 (antes tenía el 2003). Ahora el problema que me sale es en la instrucción Set e1 = o1.CreateItem(olMailItem): error 13 en tiempo de ejecución. No coinciden los tipos. Sub CORREO2() Dim RUTA As String Dim rutaavanzamadre As String Dim o1 As Outlook.Application Dim e1 As Outlook.MailItem Dim WB As Workbook Dim tomador As Workbook Dim nombredeflota As String Dim fechadecierr…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
-
-
hola leia por internet estas ideas:
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
Buenos dias, agradeceria vuestra ayuda.Tengo un cuadrante general mensual, donde aparecen todas las personas con sus turnos, el cual se envia en pdf por la macro anexa a todos los correos que figuran en la columna B.Lo que necesito es en lugar de enviar el cuadrante a todo el mundo,(1 correo a 10 personas) como hasta ahora, enviar el cuadrante de cada persona solo con sus turnos, sin datos de los demas.(1 correo por persona con solo sus datos)He probado con formulas, pero me fallan con algunos numeros, supongo que por el tema de buscarv.Anexo la plantilla que estoy intentando hacer.Gracias Prueba1.xlsm
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
- 1 seguidor
-
-
buenas tardes, tengo el siguiente código: '---------------------------------------------------' '--OPTION EXPLICIT--------------------------' '---------------------------------------------------' ' Option Explicit Dim tWebBrowser As Object ' '---------------------------------------------------' '--NAVEGADOR (CONSULTAR SALDOS '--BANCARIOS)---------------------------------' '---------------------------------------------------' ' Private Sub Worksheet_Activate() Range("C10").Select If Range("D3").Value <> "" Then If IsNull(Range("D3").Value) Then Range("D3").Value = "Banco online sin comisiones para Particulares y Negocios - ING DIRECT…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
Hola a todos, Me gustaria hacer una macro VBA que se pueda realizar o aplicar cuando seleccionamos una celda y que esta consista en que se marquen o seleccionen las columnas desde la primera hasta la columna en la cual se encuentra la celda seleccionada. [/img] http://es.tinypic.com/view.php?pic=mikjdk&s=8 http://es.tinypic.com/view.php?pic=2qjgbcz&s=8 http://es.tinypic.com/view.php?pic=2qjgbcz&s=8 Columns(valor) dentro de Range genera un valor 1 aunque valor tenga el valor de la columna de la celda activa. No se porque. Alguien puede ayudarme con este problema. Muchas gracias!!
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Hola a todos amigos! Quisiera saber si alguien tiene algun ejemplo para trabajar desde otro libro donde puedo hacer capturas, modificaciones, eliminaciones, consultar y reportes. Les agradesco mucho amigos.. Saludos...
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Buenos días, Antes de nada decir que de Visual Basic no sé absolutamente nada. Gracias a tutoriales he conseguido crear un archivo con varias formas que unidas representan el mapa de España por Comunidades Autónomas. La idea es que en función de una escala de valores, las Comunidades salgan rellenas de un color u otro. He conseguido hacer esto utilizando los colores más básicos, pero lo quiero hacer con degradados de azules, verdes o cualquier otro color y ahí viene el problema. Cuando sobrepaso el número 80 de color en la formulación me da error. Os subo el archivo para que lo podáis ver (debido al peso del archivo no me deja subirlo). Pego aquí la macro y…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.1k visitas
-
-
Hola a todos, necesito de su valiosa ayuda, tengo una macro que corre dentro de Private Sub Worksheet_SelectionChange(ByVal Target As Range) la cual es la siguiente: If Target.Address = "$AQ$3" Then Call ABRE If Target.Address = "$AQ$4" Then Call ABRE If Target.Address = "$AQ$5" Then Call ABRE If Target.Address = "$AQ$6" Then Call ABRE If Target.Address = "$AQ$7" Then Call ABRE .... Al final el rango arriba descrito termina filtrado y lo que necesito es que analice si la fila AQ3 esta visible y si es asi ejecute la macro abre() y si no tiene la propiedad visible no ejecute la macro y en ambos casos haga el recorrido automatico osea bajarse a la siguiente fila. Gra…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
-
-
buenas, estoy tratando de reducir el tamaño del siguiente código If InStr(1, c, "Out") Or InStr(1, c, "out") Then c.Value = "NS" Else c.Value = c.Value If InStr(1, c.Offset(0, 1), "Out") Or InStr(1, c.Offset(0, 1), "out") Then c.Offset(0, 1).Value = "NS" Else c.Offset(0, 1).Value = c.Offset(0, 1).Value If InStr(1, c.Offset(0, 2), "Out") Or InStr(1, c.Offset(0, 2), "out") Then c.Offset(0, 2).Value = "NS" Else c.Offset(0, 2).Value = c.Offset(0, 2).Value If InStr(1, c.Offset(0, 3), "Out") Or InStr(1, c.Offset(0, 3), "out") Then c.Offset(0, 3).Value = "NS" Else c.Offset(0, 3).Value = c.Offset(0, 3).Value básicamente es reemplazar texto de una ce…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
-
-
tengo una aplicacion con 11 hojas(1 hoja de inicio con 10 botones quiero que al abrir la aplicacion solo se muestre la hoja de inicio 1 pero con todas las solapas ocultas inclusive la solapa de hoja inicio , como lo puedo hacer , mi thisworkbook puse: Hoja1.Visible = xlSheetVeryHidden Hoja2.Visible = xlSheetVeryHidden Hoja3.Visible = xlSheetVeryHidden Hoja4.Visible = xlSheetVeryHidden Hoja5.Visible = xlSheetVeryHidden Hoja6.Visible = xlSheetVeryHidden Hoja7.Visible = xlSheetVeryHidden Hoja8.Visible = xlSheetVeryHidden Hoja9.Visible = xlSheetVeryHidden Hoja10.Visible = xlSheetVeryHidden Hoja11.Visible = x…
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Buenos días: Ante todo saludados y agradeceros lo que, poco a poco he ido aprendiendo en este foro, aunque de forma anónima, Este es mi primer post y entro preguntando y con una consulta ya que me encuentro atascado en una hoja y no se como solucionar mi problema, os cuento: Tengo una hoja en la que dependiendo de la categoría profesional que se le ponga, permite poner dietas o no. La Categoría se coge de una lista desplegable y la celda dietas tiene una validación de datos personalizada con formula que "mira" en una celda que número hay, el número viene de una función "O" que analiza anteriormente las categorías que se han introducido y solo muestra "VERDADERO" si s…
-
0
Reacciones de usuarios
- 9 respuestas
- 1.1k visitas
-
-
Hola a todos, estoy realizando una macro, tengo una base general, y otra separada por cliente, la idea es buscar la informacion de cada cliente en la base general y llevarla a la base por cliente, pero si el nombre del cliente se repite, ¿como hago para que cada vez me lleve la ultima informacion sin quitar la que dias anteriores se puso? Macro BPA.txt
-
0
Reacciones de usuarios
- 3 respuestas
- 1.1k visitas
-
-
Me gustaría saber como guardar la información en un nombre predefinido anteriormente en excel. Quiero que cuando de clic en el botón del formulario tome la información de un cuadro de texto y me la guarde en un nombre. Ejemplo: Asunto: Revisión de documento Excel: en administrador de nombres tengo creado uno que se llama asunto. En el formulario VBA hay una caja de texto y un boton, al digitar el nombre en el cuadro de texto y dar clic en el botón aceptar quiero que quede grabado esa información en el nombre predefinido asunto de excel. TextBox1.value?? = asunto??? textbox1.text?? = asunto?? Agradezco su colaboración
-
0
Reacciones de usuarios
- 1 respuesta
- 1.1k visitas
-
-
Buenas tardes. me acabo de dar de alta en el foro porque llevo días para solventar un problema con el que me he encontrado y ya no se que mas probar. Tengo un xls con un formulario en el que el usuario selecciona una serie de sociedades y ejecuta una macro que lo que hace es un save as de una plantilla tantas veces como sociedades ha seleccionado el usuario. Esto estaba en office 2007 y siempre ha funcionado, sin embargo al instalar office 2013 no funciona siempre, por ejemplo, si ha seleccionado 8 sociedades, ha guardado la plantilla 5 veces, esto es, sin ninguna lógica y coherencia a veces no hace el saveas. Si ejecuto el código paso a paso, aparentemente lo hace bi…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.1k visitas
-
-
Buenas tardes amigos alguien me podría ayudar Quiero ver para modificar sus datos bancarios las columna no son consecutivasy solo quiero cargar las columnas A, B, K, y L Libro de Clientes.xlsm
-
0
Reacciones de usuarios
- 5 respuestas
- 1.1k visitas
-
-
hola todos tengo una duda, tengo un calendario en un userform llamado FmCalendario y logro ingresa r la fecha presionando doble click en un textbox del userform llamado FmJornada y que ponga la fecha, con estos codigos este es del textbox Private Sub TextFeJornada_DblClick(ByVal Cancel As MSForms.ReturnBoolean) FmCalendario.Show End Sub[/CODE] este es del calendario [CODE]Private Sub Calendar_Click() FmJornada.TextFeJornada = Calendar.Value Unload FmCalendario End Sub[/CODE] ahora lo que quisiera hacer es que el calendario se pueda usar para diferentes formularios, es decir, tengo tres formularios y en los tres se necesita fecha, asi que me gustaria p…
-
0
Reacciones de usuarios
- 4 respuestas
- 1.1k visitas
-
-
Hola a todos, mi nombre es Maurizio Y mi problema es este: Hace unos años logré crear una especie de pronóstico del tiempo con vba y hasta ahora todo va bien. Como todo este trabajo funciona muy bien. Pero como, sin embargo, normalmente no soy una persona que se satisfaga fácilmente, me gustaría entender cómo cambiar De manera drástica, su Enlace no solo puede obtener las mismas cosas; Pero también para poder atraparlos. Primeras tres imágenes de la ubicación elegida por mí de la hoja de Excel. Hay algunos de ustedes que podrían ayudarme en esto, aunque solo sea llegando a los escritos. ¡Del lugar en cuestión y el mínimo y el máximo de los tres pr…
-
0
Reacciones de usuarios
- 0 respuestas
- 1.1k visitas
- 1 seguidor
-
-
Hola buenas tardes mi nombre es Victor M. es mi primera publicación, tengo tiempo buscando en temas anteriores un buscador pero los que encuentro no me ayudan y si existe me disculpo pero no lo encontré, tengo esta situación; Tengo una gran cantidad de datos alrededor de 12,000 actualmente lo realizo con una formula pero esto me hace lento ami macro busco la manera de buscar información dentro de un mismo libro en hojas diferentes con la diferencia de que necesito la información de una gran cantidad de datos sin UserForme, formulas, ni filtros avanzados ya los intente solo un buscador sencillo de información anexo el ejemplo espero que le sea mas claro lo que busco. G…
-
0
Reacciones de usuarios
- 6 respuestas
- 1.1k visitas
-
-
Hola a ver si me podeis ayudar... os cuento: en la hoja1 tengo que poner valores en las celdas (de la E14 a la E28) y quiero que en la hoja1 se me vayan acumulando los valores en las mismas celdas. ahora tengo esto: Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Target.Address = "$E$14" Then [Hoja1!E14] = [Hoja1!E14] + Target End Sub Pero no se como hacer para el resto de celdas. Gracias de antemano!!!
-
0
Reacciones de usuarios
- 2 respuestas
- 1.1k visitas
-
-
¡Hola a todos y gracias por pasar aquí! Los valores que se encuentran en celda “DE2” de la hoja BASE, se desea hacer un filtro avanzado con un rango dinámico pues el que realice presenta errores. Al digitar en toda la columna resaltada en amarillo (hoja: Informes de Analisis y Decision celdas P2:P5) los valores de ANALIZADO, APLAZADO, APROBADO, EN ANALISIS, RECHAZADO y SIN DOC. (Que son todos los valores de la columna ESTATUS de la hoja BASE). En algunos casos hace el filtro pero en otros no, motivo por el cual estoy solicitando ayuda en este foro. El fin de esta macro es que se complemente con otra macro (esta macro no presenta errores aparentemente pero la cual adjunt…
-
0
Reacciones de usuarios
- 2 respuestas
- 1.1k 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.