Saltar al contenido

Se puede accesar a una base de datos firebird desde una macro??


jazh83

Recommended Posts

Si, se puede acceder a cualquier base de datos Sql si dispones del driver ODBC correspondiente.

Te adjunto un formulario de ejecución de sentencias SQL válido para todas las bases de datos.

Confirmado su funcionamiento con Access, Sql Server y MySql.

Si te funciona, por favor comunícalo para añadir Firebird a la lista.

Descarga el archivo desde:

https://www.ayudaexcel.com/foro/ideas-aportes-64/consultas-sql-sobre-cualquier-base-datos-25714/

Enlace a comentario
Compartir con otras webs

Gracias, por el momento no he utilizado tu aplicación pero no se si alguien me pueda ayudar con lo siguiente:

Estoy tratando de conectarme de la siguiente manera;

Ruta = "C:......\ARCHIVO.FDB"

Usuario = "SYSDBA"

Password = "********"

Driver = "Firebird/InterBase® driver"

Conecta = "DRIVER=" & Driver & "; UID=" & Usuario & "; PWD=" & Password & "; DBNAME=" & Ruta & ";"

Set cn = New ADODB.Connection

cn.Open Conecta

Pero me indica que se produjo el sigiente error:

[ODBC Firebird Driver]unavailable database

Gracias...

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 98 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      177
    • Comentarios
      90
    • Revisiones
      27

  • Crear macros Excel

  • Mensajes

    • He descargado tu archivo y funciona correctamente, revisa el video adjunto:
    • Hola perdon no pegue todo mi codigo, no lo copie bien es este al principio: Sub MacroG() Application.ScreenUpdating = False       Mensaje = "No se pueden guardar los datos aún hay celdas vacías:" 'Recorremos las celdas For i = 1 To 6     If Sheets("INGRESO").Range("DATO" & i).Value = "" Then         Valor = Sheets("INGRESO").Range("DATO" & i).AddressLocal         Valor1 = Valor1 & VBA.vbNewLine & Valor     End If   Next i   If Not Valor1 = "" Then     MsgBox Mensaje & VBA.vbNewLine & Valor1, vbExclamation, "Ingreso de Productos" Else     End If   Donde cada celda le cambie el cuadro de nombre C4= DATO1 C5= DATO2 C6= DATO3 C7= DATO4 F4= DATO5 F5= DATO6 asi estoy seleccionando las celdas Comparto mi macro que esta en la nube https://files.fm/u/uzb68tetng  
    • No has especificado cuales son las celdas a validar si están vacías, te he puesto un ejemplo para el rango A1:A6, corrige a voluntad: Sub Borrar() '------- Corregir las celdas según necesidad If Range("A1") = "" Or _ Range("A2") = "" Or _ Range("A3") = "" Or _ Range("A4") = "" Or _ Range("A5") = "" Or _ Range("A6") = "" Then MsgBox "Hay celdas vacías", vbInformation Exit Sub End If '------- Range("C5").ClearContents Range("C7").ClearContents Range("C8").ClearContents Range("C23").ClearContents Range("C24").ClearContents Range("C39").ClearContents Range("C40").ClearContents Range("C55").ClearContents Range("C56").ClearContents Range("C71").ClearContents Range("C72").ClearContents Range("C87").ClearContents Range("C88").ClearContents Range("C103").ClearContents Range("C104").ClearContents Range("C119").ClearContents Range("C120").ClearContents Range("C135").ClearContents Range("C136").ClearContents Range("C151").ClearContents Range("C152").ClearContents End Sub  
    • Hola me podrian ayudar a corregir esta macro, ya que que he puesto la condicion que no se ejecute por si hay valores vacios en 6 celdas y siempre se ejecuta, comparto codigo:     Selection.ClearContents     Range("C5").Select     Selection.ClearContents     Selection.ClearContents     Range("C7").Select     Selection.ClearContents     Selection.ClearContents     Range("C8").Select     Selection.ClearContents     Range("C23").Select     Selection.ClearContents     Range("C24").Select     Selection.ClearContents     Range("C39").Select     Selection.ClearContents     Selection.ClearContents     Selection.ClearContents     Range("C40").Select     Selection.ClearContents     Range("C55").Select     Selection.ClearContents     Range("C56").Select     Selection.ClearContents     Range("C71").Select     Selection.ClearContents     Selection.ClearContents     Range("C72").Select     Selection.ClearContents     Range("C87").Select     Selection.ClearContents     Range("C88").Select     Selection.ClearContents     Range("C103").Select     Selection.ClearContents     Range("C104").Select     Selection.ClearContents     Range("C119").Select     Selection.ClearContents     Range("C120").Select     Selection.ClearContents     Range("C135").Select     Selection.ClearContents     Range("C136").Select     Selection.ClearContents     Range("C151").Select     Selection.ClearContents     Range("C152").Select     Selection.ClearContents     Range("A1").Select     Selection.End(xlUp).Select     Selection.End(xlUp).Select     Selection.End(xlUp).Select     Selection.End(xlToLeft).Select     Selection.End(xlToLeft).Select     Selection.End(xlToLeft).Select     Selection.End(xlToLeft).Select     Selection.End(xlUp).Select     Selection.End(xlUp).Select     Selection.End(xlUp).Select     Selection.End(xlToLeft).Select     Range("C4").Select         End Sub
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.