Stifone ha scritto:
Direi che sia più corretto in questo modo:
Private Sub Comando29_Click()
Dim strsql, a As String
Dim varItm As Variant
For Each varItm In Me.E_comproprietari.ItemsSelected
strsql = "INSERT INTO tblComproprietari " _
& "(IDDOCUMENTO, IDANAGRAFICA) " _
& "VALUES (" & Forms!frminseriscidocumento!subfrmInserisciDocumento!IDDOCUMENTO & " as IDDOCUMENTO, " _
& Me.E_comproprietari.ItemData(varItm) & " AS IDANAGRAFICA)"
DoCmd.RunSQL a
Next
Forms!frminseriscidocumento!subfrmInserisciDocumento.Form.subfrmComproprietari.Requery
End Sub
Ciao Stifone
anzitutto grazie
Ho provato il codice come scritto da te, ma mi da sempre errore.
Non riesco a capire perché utilizzando la stessa sintassi del codice qui sotto:
Private Sub AggSel_Click()
Dim strSQL As String
Dim a As String
Dim varItm As Variant
If Me.E_acc.ItemsSelected.Count < 2 Then
MsgBox "Selezionare almeno due aziende da aggiornare", vbCritical
Exit Sub
End If
For Each varItm In E_acc.ItemsSelected
strSQL = strSQL & "," & E_acc.ItemData(varItm)
Next varItm
strSQL = Right(strSQL, Len(strSQL) - 1)
Testo7 = strSQL
a = "INSERT into tblAssGasolio " _
& "(ID_FASCICOLO_AZIENDALE, CAMPAGNA, OPERATORE, ID_DOMANDA, CUAA) " _
& "SELECT " & E_acc.ItemData(varItm) & " AS ID_FASCICOLO_AZIENDALE, '" _
& CVDate(Date) & "' AS CAMPAGNA, '" & Forms("frmSchedaAziendale")!utente & "' as OPERATORE, (" & 2 & ")" _
& " AS ID_DOMANDA, CUAA " & "FROM Q_Saldidafare WHERE ID in (" & (strSQL) & ")"
con seguente debug.print
INSERT into tblAssGasolio (ID_FASCICOLO_AZIENDALE, CAMPAGNA, OPERATORE, ID_DOMANDA, CUAA)
SELECT [b]IDFA [/b]AS ID_FASCICOLO_AZIENDALE, '10/09/2020' AS CAMPAGNA, 'CREMASCHINI MARCO' as OPERATORE, (2) AS ID_DOMANDA, CUAA
FROM Q_Saldidafare
WHERE ID in (769,771)
mi riporta un debug.print diverso (al posto di
IDFA viene riportato direttamente il primo ID dell'elenco e non quelli che seleziono)