Saltar al contenido

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?

  1. Started by eduard,

    Buenas noches, Me estreno en este foro preguntado a cerca que al crear una serie de botones, con su código en VB y que funcionan a la perfección, otros códigos que antes funcionaban bien ahora me producen 2 tipos de errores. No le veo la lógica y escribo por si alguien me dá alguna idea. Los errores són: Se ha producido el error '438' en tiempo de ejecución: El objeto no admite esta propiedad o médodo. Se ha producido el error '1004' en tiempo de ejecución: Error en el método 'Range' de objeto '_Worksheet' Pero repito que estos errores aparecen en macros que antes funcionaban bien, y en cambio las nuevas macros funcionan bien y sin errores. Gracias! He intentado s…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.5k visitas
  2. Started by jesus miguel,

    Estimados amig@s me sale el siguiente mensaje cuando llamo a un formulario: "Se ha producido el error '404' en tiempo de ejecución: No se puede mostrar un formulario modal cuando se muestra un formulario modal " Este formulario lo llamo desde otro formularioque lo uso como "MENU" el cual tiene un pagina múltiple y en una de las paginas tiene tres commandbutton un commandbutton funciona bien porque lo uso para llamar a otro formulario pero el segundo commandbutton le di la orden para llamar a otro formulario pero me sale el mensaje de arriba. Com pudo solucionarlo? Saludos Jesús

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 7.8k visitas
  3. Started by jalomiva,

    Buenas a todos los que pertenecemos a este gran foro. Desde hace unos 4 o 5 días me arroja el error 13, porque hasta la fecha la macro corría bien, por mas que he leído en el foro no doy con la solución. en rojo es la linea que me arroja el error. Private Sub Matricula_AfterUpdate() If WorksheetFunction.CountIf(Hoja12.Range("C:C"), Me.matricula.Value) = 0 Then MsgBox "Matricula Incorrecta" Me.matricula.Value = "" Exit Sub End If With Me nombre = Application.WorksheetFunction.VLookup(CLng(Me.matricula), Sheets("AGENTES").Range("C3:D3000"), 2, 0) End With End Sub

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  4. Started by Pako_Jones,

    muy buenas, se que es una tonteria pero no logro dar con el problema. es una macro sencilla para calcular el numero de meses transcurridos desde una fecha, y lo que pretendo es asignar la celda donde está la fecha incial a una variable, pero me da error de tipos muchas gracias Option Explicit Sub DifMeses() ' ' calcula diferencia de meses entre fechas ' Dim Fecha1 As Date Fecha1 = Range(InputBox("donde está la fecha inicial", "Cálculo meses")) ActiveCell.FormulaR1C1 = _ "=DATEDIF(RIGHT(Fecha1,2)&""/""&MID(Fecha1,5,2)&""/""&LEFT(Fecha1,4),TODAY(),""m"")" End Sub

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.7k visitas
  5. Started by dorgelis,

    Buenos días mis apreciados Foreros, la presente es para ver si me pueden apoyar en algo, tengo un archivo de Inmobiliaria, donde en una Hoja tengo "Recibo", y otra hoja que se llama "Histórico", en la hoja de recibo necesito que se traslade la información a histórico, y al pasar el saldo de la hoja de Recibo en histórico me figura otro monto. Ya revise mi macro y todo, pero no entiendo porque me calcula otro monto. En el anexo, el saldo que bebe ir en la Hoja Histórico M2 es de 660 y me traslada otro valor. Quisiera saber cual es mi error. INMOBILIARIA DORG 8.1.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 791 visitas
  6. Started by gustav2704,

    saludos. estoy ttrabajanndo en un treeview de un ejemplo que vi en internet pero me arroja un error Private Sub TreeView1_KeyDown(KeyCode As Integer, ByVal Shift As Integer) With TreeView1.SelectedItem 'aqui una de las ventajas de tener bien definido el Tag. si este es 'distinto a marca , entonces es una caracteristica: If .Tag <> "marca" Then 'si la tecla presionada es la de borrar: If KeyCode = vbKeyDelete Then 'borro el dato en excel Range(.Tag).ClearContents ' 'y quito el nodo TreeView1.Nodes.Remove (.Index) ElseIf KeyCode = vbKeyReturn Then 'si presio…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 967 visitas
  7. 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
  8. Muy Buen Dia, agradesco su ayuda. El problema es que tengo un UserForm con 40 ListBox, en los cuales con el evento Exit deben de ir Armando un "Where" que quiero usar para SQL, los primeros 20 ListBox lo hacen perfectamente, pero los Siguientes 20, no hace nada cuando se cumple el evento. Estube revisando paso a paso y primero cierra el UserForm y al final se va al Exit del Listbox(21-40) correspondiente. Este es el Codigo de ListBox1, que funciona bien. Private Sub F_1__Exit(ByVal Cancel As MSForms.ReturnBoolean) Dim F As New Collection For i = 0 To F_1_.ListCount - 1 If F_1_.Selected(i) = True Then F.Add ("Base.A1 = '" & F_1_.List(i) & "…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.3k visitas
  9. Buenos días; Por favor, me podéis ayudar??. He creado una macro con unas casillas de verificación en un formulario. Al marcar cualquier casilla de verificación y dar al botón generar, llama a una macro “Generar_Datos” y hace X. El problema que tengo es, si tengo las líneas a ejecutar de las casillas de verificación dentro del formulario funciona pero si las tengo en un módulo ( necesito que este hay ya que si no hay cosas que no me funcionan ) me da error de “variable de objeto o bloque with no establecido”, no sé cómo definirlos, los definí como objetos pero no me funciona. Os adjunto el ejemplo. Muc…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 833 visitas
  10. Started by ronalehm,

    Hola, buenos dias tengo un problema en un combobox, el cual lo utilizo para listar categorias y dependiendo de eso listo otra categoria, pero tengo un error cuando el valor de la primera categoria es null o vacio "". aqui el codigo: Private Sub cbo_Categoria_DropButtonClick() Dim sh As Worksheet Set sh = ThisWorkbook.Sheets("BD") Dim i As Integer Dim n As Integer n = Application.WorksheetFunction.Match(Me.cbo_Categoria.Value, sh.Range("1:1"), 0) Me.cbo_Tipo.Clear For i = 2 To Application.WorksheetFunction.CountA(sh.Cells(1, n).EntireColumn) Me.cbo_Tipo.AddItem sh.Cells(i, n).Value Next i Tengo error en la linea n; porque el valor …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 674 visitas
    • 1 seguidor
  11. Started by 54022298,

    Hola buenos dias. El problema es que cuando voy Abro Excel, voy a la pestaña Programador y luego al icono Visual Basic (Programador - Visual Basic), pero al momento de darle en el icono visual Basic me aparece un mensaje que dice: "No se puede cargar VBE6EXT.OLB" - Este mensaje me da un boton el cual es aceptar Doy clic en aceptar y me aparece inmediatamente otro mensaje que dice "Memoria insuficiente" y no me abre Visual Basic. Tengo Microsoft Office 2010 y utilizo Windows 8. Gracias por todo.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.2k visitas
  12. Started by Pako_Jones,

    Buenas, me pasa una cosa extrañísima y pruebo aqui a ver si le ha pasado a alguien más y sobre todo si hay alguna solución: la hoja de cálculo en cuestión tiene un combo box para poder visualizar diferentes cuentas de resultados en la pestaña cta. Es un fichero que tenemos en red, que usan diferentes usuarios. Pues bien, cuando desconectas el portátil de la red, con el fichero abierto (para ir a alguna reunión fuera de tu sitio) hay un momento, que al navegar por las opciones el combo, en este se distorsiona la fuente de las opciones y no puedes ver nada (adjunto imagen). Si estas conectado en red, NUNCA pasa. Nos pasa en diferentes ordenadores. Es verdad que …

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 2k visitas
  13. Started by Colonques,

    Hola amigos una aplicación hecha en Excel 2007, con 12 formularios, una interfaz con todas las hojas ocultas y extenso código después de estar funcionando 5 años en Excel 2007 si error. Al abrirla con Excel 2013 todo funciona bien y no da ningún error, pero al cerrar un formulario con el código al final SaveWorkbook para que guarde cambios , da un error en el evento MouseMove de una etiqueta (label) del interfaz. Una etiqueta que al aparecer al pasar el puntero del ratón encima y hacer click, se visualiza un Formulario. El error es: Error en tiempo de ejecución: Error definido por el objeto. Mi pregunta es por qué vuelca un error en un objeto que no tiene nada que ve…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 733 visitas
  14. Started by pancho0423,

    Hola, Me estoy volviendo loco tratando de hacer una macro, que en realidad es muy sencilla. Simplemente se trata de una columna con fechas separadas por ptos. (ejemplo 01.01.2021) que la copie en otra columna separada por barras , con formato 01/01/2021. Sin embargo, en alguna fechas me cambia el orden de los meses y los días, y no sé como solucionarlo. Sucede entre otras fechas el 12.07.2021 que lo transforma en 07/12/2020 Pongo una hoja de ejemplo. Gracias de antemano !EJEMPLO.xlsx

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.8k visitas
    • 1 seguidor
  15. Buenas tardes comunidad del Foro por solicitar su valiosa ayuda con las siguientes inquietudes. 1. Ejecuto una macro lista de validación, datos de la hoja CAMPO NORTE. Al cerrar el libro y abrirlo nuevamente me da un error Y se me va creando un nuevo ThisWorkbook en el VBAProject 2. Del resultado que obtengo en Q3 hoja INGRESO PRUEBA me compare con el valor de la hoja CAMPO NORTE columna J según el nombre de la lista de validación escogido en C3 y en W3 de la hoja INGRESO PRUEBA me dé cual es la diferencia entre esas cantidades. Les agradezco de antemano por su ayuda y tiempo con el código de programación VBA DESARROLLO1.xlsm

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.2k visitas
    • 1 seguidor
  16. Hola ojala me ayuden con esta macro q en el 2003 funciona perfecto , pero en 2007 se cae al toque me aparece algo de un error 1004 tiempo ejecución , pero no logro repararla, esto pq me borraran el 2003 y me urge q funcione, es una macro para enviar varios correos con información de excel la macro es Private Sub ENVIAR_EMAIL() Application.ScreenUpdating = False Application.DisplayAlerts = False ' para q no salga aviso al final HMAIL.Activate HSAL.Cells.Clear HMAIL.Cells.Copy HSAL.Cells 'Workbooks(L3).SaveCopyAs ThisWorkbook.Path & "\LOCAL " & COL.List(x, 0) & ".xls" ActiveWorkbook.EnvelopeVisible = True 'permite enviar mas de 1 correo a la v…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 988 visitas
  17. Started by gacg1310,

    error mac.pdf Buenas Tardes desde Colombia Adjunto imagen del error que me sale al ejecutar un archivo en mac, lo raro es que yo lo tenia en mi excel de windows y funcionaba perfectamente y ya hoy al abrirlo me esta sacando el mismo error, agradezco su ayuda

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2.2k visitas
  18. Started by Donca,

    Hola Todos; Soy algo nuevo con el tema de los macros en VBA, estoy tratando de hacer uno que aplique el goal seek en cada una de las celdas en un rango determinado. Lo que he creado hasta el momento es lo siguiente: Sub GoalS() For Each cell In Range("c133:n133") If cell <> 0 Then cell.Select Selection.GoalSeek , Goal:=0, ChangingCell:=Selection.Offset(RowOffset:=-95).Select End If Next cell End Sub Pero me genera el siguiente error: Run-time error '1004: Application-defined or object-defined error Quisiera su ayuda para detectar el error. Muchas gracias

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 953 visitas
  19. Cordial saludo, y agradecimiento de antemano por su ayuda. Tengo el siguiente código para imprimir varias hojas desde un Form, pero presenta error : ' error 21470224773 (8007007b) Option Explicit Private Sub CBRegistro_Click() Dim b As Boolean Dim Ruta As String Dim Nombre As String Dim paso2 As Boolean Nombre = UCase(InputBox("IMPRIMIR INFORME - ID DE ACCESO - Guardar una copia de los Registros de la Prueba ejecutada")) paso2 = False Select Case Nombre Case "PRIMERO" If UCase(InputBox("Introduce tu clave de acceso")) = "PRIMERO2020*" Then paso2 = True Case "CLAVEDOS" If UCase(InputBox("Introduce tu clave de acceso…

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.2k visitas
    • 1 seguidor
  20. Hola a todos, tengo un problemilla. Tengo un archivo de Excel compartido al que trato de acceder por medio de una macro con el siguiente código: Workbooks.Open Filename:= _ "I:\Mi Carpeta\Mi archivo.xlsm" _ , UpdateLinks:=3, ReadOnly:=True El problema es que hay veces, que me sale Error 13: No coinciden los tipos y que solo con descompartir el libro se soluciona el problema, pero necesito que el archivo esté compartido. ¿Alguien sabe porque me da ese error o como solucionarlo? El caso es que me da solo a veces y no en todos los archivos que trato de abrir de ese modo. Muchas gracias de antemano.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 610 visitas
  21. Started by lphant,

    Buenos días; A ver si me podéis ayudar. Tengo una consulta SQL en Excel que me cuenta las fechas por número de semana, todo funcionaba bien hasta este año. Buscando por internet he encontrado la solución ( [vbMonday],[vbFirstFourDays] ) pero no me funciona, no sé qué pongo mal. Esta era la consulta que funcionaba hasta este año ( ahora en la semana 8 me cuenta lo de la 7 ). Query = "Select count (Columna1) from [Hoja1] where Columna1 In" & Datos & "And DatePart('ww',Columna2)=" & SemanaActual & "And DatePart('yyyy', Columna2)=" & AñoActual & "And (Not tipo_Columna3='No' or Columna3 is null)" Esta es con la solución qu…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.7k visitas
  22. Started by maret,

    Estimados tengo un libro excel que abro desde mi pc y me da el siguiente error. Se ha producido el error 1004 en tiempo de ejecución. Error odbc. El tema es que lo abro desde otras PCs y funciona bien. Ya intente agregar la misma version de office que de las otras PCS, inclusive agregue los parches hotfix. En la depuración me sale el siguiente error. With Worksheets("PODER_RESCATE") Range("W100").Activate Worksheets("PODER_RESCATE").QueryTables("listDiaActividad").Refresh 'Worksheets("ARQUEO").cargaCombo 'Worksheets("PODER_RESCATE").CB_Fechas.Select 'Worksheets("PODER_RESCATE").CB_Fechas.Clear Acciones.CB_Fechas.Clear Range("W101")…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.1k visitas
  23. hOLA BUENOS DIAS, ESTOY DESARROLLANDO UN PROGRAMA QUE EN OFFICE 2007 ME ARROJA UN ERROR PARA GUARDAR LOS DATOS. EL MENSAJE DICE ERROR 1004, ERROR EN EL METODO PASTESPECIAL DE LA CLASE RANGE. EN DONDE DEBO ESCRIBIR LAS FECHAS ME SUPONGO QUE EL ERROR DEBE SER POR EL USO DE LOS MONTHVIEW. EN EL MODULO 2 SE ENCUENTRA LA MACRO QUE REALIZA EL PROCEDIMIENTO DE GUARDAR LOS DATOS. AGRADEZCO TODA LA AYUDA Y SUGERENCIA QUE ME PUEDAN APORTAR. GRACIAS HERMANAZOS Control de Acceso Final 6.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 716 visitas
  24. Started by floren196507,

    BUENAS ESTIMADOS SOY FLORENCIO MENCIAS DE HONDURAS CENTROAMERICA. SOY SUPER NUEVO EN ESTE GRUPO. TRABAJO CON MACROS Y BISUAL BASIC PERO HACE UNOS DIEZ DIAS AL MOMENTO DE QUERER TRABAJAR MIS ARCHIVOS BASADOS EN MACROS Y BISUAL BASIC ME APARECE UN ERROR Y NO HE PODIDO DECIFRARLO O ARREGLARLO EL ERRO ES EL SIGUIENTE: PARTE QUITADA: PARTE/XL/VBAPROJECT.BIN (VISUAL BASIC PARA APLICACIONES (VBA)). ALQUIEN PODRIA DARME UN CONSEJO DE AYUDA YA QUE ESTOY SUPER ATRAZADO CON VARIOS TRABAJOS. GRACIAS

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 3k visitas
    • 1 seguidor
  25. Buenas tardes; Tengo un problemita con una consulta SQL. En nombre de la columna de la que estoy filtrando un dato tiene espacios y ….por mas que he probado no consigo hacerla funcionar, siempre me da error. Como debo ponerlo (Descripción Casas )??. He probado con [ ] , con “”, con variable y nada. Dato = "'" & "Londres" & "'" Devolu = "'" & "Fin" & "'" Exacto = " = " Query = "SELECT * FROM Consulta where [Descripción Casas]" & Exacto & Dato & _ " and Motivo" & Exacto & Devolu Pd: no subo excel porque no se puede probar, si fuera necesario le s…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 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.