Insert into con VBA

di il
6 risposte

Insert into con VBA

Non sono molto pratico con il codice VBA quindi chiedo aiuto per trovare l'errore nel mio insert into
Private Sub NUM_id_AfterUpdate()
Dim cn As ADODB.Connection
Dim rs As Recordset
Set cn = CurrentProject.AccessConnection
Set rs = New ADODB.Recordset
idvalore.Value = [Form_frm1]![NUM_MATRIC]
 With rs
   Set .ActiveConnection = cn
  .Source = "INSERT INTO tbl_2 (id) VALUES (idvalore)"
  .LockType = adLockOptimistic
  .CursorType = adOpenKeyset
  .Open
 End With
End Sub

6 Risposte

  • Re: Insert into con VBA

    Scusa ma perchè tutto sto codice per fare una cosa che puoi fare in una riga?
    dov'è sto codice? in un form? e cos'è idvalore? un controllo di questa form che si popola col valore di un'altra form?
    spiega cosa stai cercando di fare per piacere perchè mi sembra quasi tutto inutile quello che hai scritto
  • Re: Insert into con VBA

    In pratica quando inserisco i dati da una maschera devo creare un record in tbl_1 ed un altro in tbl_2 entrambi con lo stesso NUM_MATRIC campo della relazione.
  • Re: Insert into con VBA

    Non hai risposto alla domanda su idvalore

    Comunque, non puoi inserire dentro le virgolette nella stringa della INSERT il nome della variabile o dell'elemento che contiene il dato. Quello va aggiunto alla stringa con la & per concatenare la stringa

    Devi dare un'occhiata alle (semplici) *basi* del linguaggio prima di mettere mani ai DB
  • Re: Insert into con VBA

    Allora idvalore è una variabile che recupera il contenuto del campo NUM_MATRIC della maschera appena inserito
  • Re: Insert into con VBA

    Se fosse una variabile non avresti .Value

    Cosa è?
  • Re: Insert into con VBA

    Comunque ... a parte codice che ritengo inutile la sintassi giusta non è usando la VALUES ma la SELECT
    se non ho capito male la form non è associata e devi inserire qualcosa con lo stesso id in 2 tabelle?!
    nel caso ti bastano 2 righe di codice
    
    dbengine(0)(0).execute "INSERT INTO nome_tabella1 ( elencoCampi ) SELECT elencoValori", eventualiOpzioni
    dbengine(0)(0).execute "INSERT INTO nome_tabella2 ( elencoCampi ) SELECT elencoValori", eventualiOpzioni
    
Devi accedere o registrarti per scrivere nel forum
6 risposte