Insertar registros usando la sentencia SQL INSERT en VBA

sql-insert-vba

Escrito por Administrador

10 de noviembre de 2021

En este post, vamos a aprender a insertar registros en una tabla usando la sentencia SQL INSERT en VBA.

Es posible que, a veces, no tengamos los formularios asociados directamente a una tabla porque no nos interese, o simplemente queremos rellenar varias tablas de manera simultánea. En estos casos usaremos dicha sentencia, y seremos nosotros quienes controlemos cuando se transfieren los datos a las tablas.

En el archivo de ejemplo que he preparado (y se encuentra adjunto más abajo), tenemos una tabla llamada "Datos" y un formulario llamado "Datos personales".

solo-letras-vba
solo-letras-vba

La idea es que cuando cumplimentemos la información del formulario, y pulsemos el botón Enviar, los datos sean insertados en la tabla.

Para ello, el código que hay que añadir en el evento "Al hacer clic" del botón es el siguiente,

Private Sub Enviar_Click()

'Insertamos en la tabla Datos el nuevo cliente

Dim dbs As DAO.Database

Set dbs = CurrentDb()

DoCmd.SetWarnings False

Dim datosSQL As String

datosSQL = "INSERT INTO Datos ([nombre],[apellidos],[edad],[telefono]) VALUES ('" & Form!Nombre & "','" & Form!Apellidos & "','" & Form!Edad & "','" & Form!Telefono & "')"

DoCmd.RunSQL datosSQL

DoCmd.SetWarnings True

End Sub

Si te fijas, he incluido el comando DoCmd.SetWarnings para activar y desactivar los mensajes de aviso. De lo contrario, aparecería un mensaje avisándonos de que se van a insertar registros en la tabla y ralentizaría nuestro trabajo.

A continuación, os dejo dos imágenes en las que se ve el formulario relleno, y el resultado en la tabla una vez pulsamos el botón Enviar.

solo-letras-vba
solo-letras-vba

Si lo que quieres es insertar toda la información, o parte de ella, en varias tablas, solo tienes que escribir tantos inserts como tablas tengas. Así de fácil.

Espero que con este ejemplo hayas aprendido a insertar registros en una tabla usando la sentencia SQL INSERT en VBA.

Por último, os dejo dos enlaces donde explico cómo borrar registros usando la sentencia SQL DELETE en VBA y cómo actualizar registros usando la sentencia SQL UPDATE en VBA, por si os interesa.

Un saludo y hasta la próxima.

Descarga el archivo del ejemplo

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Quizá te interese,

Contacto