Salve a tutti,
ho da poco iniziato ad usare MS Access a lavoro e premetto che non sono un esperto.
In particolare, ho creato da zero (seguendo tutorial qua e la) un database di gestione scadenze e relativi pagamenti.
Inizialmente il db veniva utilizzato da una sola persona, ma ora è nata la necessità di essere gestito da più persone simultaneamente.
Ho quindi spostato il db in una cartella condivisa nella rete aziendale e creato, tramite la procedura guidata di access, be (che contiene le sole tabelle) e fe (che contiene tabelle collegate e tutto il resto).
Ora, veniamo al problema..
Oltre ad altre, ho due tabelle che contengono rispettivamente scadenze e pagamenti che si chiamano “T_Scadenze” e “T_Pagamenti”.
In una delle maschere, in particolare quella per inserire un pagamento effettuato, ho il seguente codice:
Private Sub cmdSalva_Click()
Dim Rs1 As DAO.Recordset
Dim rowCount As Long
…
Set Rs1 = CurrentDb.OpenRecordset("T_Scadenze", dbOpenTable)
rowCount = Rs1.RecordCount
For row = 0 To rowCount - 1
If Rs1.Fields("IDScadenza") = [IDScadenza].Value Then
Rs1.Edit
Rs1.Fields("Residuo") = Rs1.Fields("Residuo") - [Importo]
Rs1.Update
If Rs1.Fields("Residuo") = 0 Then
Rs1.Edit
Rs1.Fields("Pagata") = 1
Rs1.Update
End If
End If
If row <> rowCount - 1 Then
Rs1.Move (1)
End If
Next
Rs1.Close
Set Rs1 = Nothing
…
End Sub
Praticamente lo scopo di questa Sub è quella di aggiornare i campi della tabella “T_Scadenze”, in particolare l'importo residuo della specifica fattura e impostare il campo “pagata” come "vero" nel caso in cui il pagamento sia uguale all'importo residuo da pagare.
Il problema nasce ora che ho “spostato fuori” le tabelle, in quanto va in errore l'istruzione:
Set Rs1 = CurrentDb.OpenRecordset("T_Scadenze", dbOpenTable)
Mi dice “Errore di run-time ‘3219’: Operazione non valida”. Immagino che sia perché non riesce a “raggiungere” la tabella..
Mi sapreste gentilmente indicare una possibile soluzione al problema?
Grazie mille
Jacopo