Newsgroup: it.comp.appl.access
Titolo: Come copiare record cambiando solo una campo...

Salve a tutti...
Il mio problema e' questo.
In Access 97 ho una tabella che contiene l'anagrafica.
I campi principali sono : LOC,PARC,ANNO,REPLIC e altri dati
descrittivi.
Quando compilo un record vorrei fare in modo di poter copiare tutto
il contenuto appena scritto in n record dove l'unico campo che cambia
e' Replic.
Vorrei farlo attraverso una maschera perche' la compilazione non la
faro' io.
Es il mio record e' questo
LOC	PARC	ANNO 	REPLIC ANNO 	MADRE
01	10d	2000	125	2000	Antonia
Dovrei copiare questo 5 volte per la pianta 126,127,131,132,134
(piante che dovrebbero essere inserite dall'utente).
Ivan
Mi potete aiutare?
Grazie di tutto

 ha scritto nel messaggio
news:g5ik8tg9s8o053fdl...@4ax.com...

Dai un'occhiata alla FAQ del Sito Comune, Sezione Forms, "Ripetere un valore
precedente in una forms." di Federico Luciani; secondo me fa al caso tuo.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

Grazie... le sto guardando...
Ciao


Ciao Roberto...
Io ho provato a fare come detto sul sito comune.
Sta di fatto che mi copia i valori dell'ultimo record della tabella e
non del record dove attualmete sono... (o forse sbaglio qualcosa?).
Ivan
Ciao e grazie della disponibilita'


 wrote:



[CUT]
Ti sarei grato se rispondessi dopo e non prima dei messaggi precedenti.
Comunque, se questo è il modo che preferisci per risolvere il tuo problema,
io farei così.
Ipotizziamo che la tua tabella si chiami Tabella1 e che contenga i seguenti
campi: ID (chiave primaria), LOC, PARC,ANNO1, REPLIC, ANNO2 e MADRE.
Ipotizziamo anche che l'inserimento dei record tu lo faccia con una maschera
che abbia come origine record Tabella1 e che abbia altrettanti controlli
associati au campi su scritti, controlli che hanno gli stessi nomi dei
campi.
A fronte dell'evento "Dopo inserimento" della tua maschera genera il
seguente codice VBA:
Private Sub Form_AfterInsert()
Dim IntNuovo As Integer, strTitolo As String
Dim IntFinestraMsg As Integer, strMsg As String
strTitolo = "Inserimento di repliche"
strMsg = "Vuoi registrare dei record replica?"
IntFinestraMsg = vbYesNo + vbQuestion
IntNuovo = MsgBox(strMsg, IntFinestraMsg, strTitolo)
If IntNuovo = vbNo Then
    Exit Sub
End If
Dim MioDB As Database
Dim MioRst As Recordset
Set MioDB = CurrentDb
Set MioRst = MioDB.OpenRecordset("Tabella1")
Dim intInput As Integer, strMsg1 As String, Numero As Integer
Numero = 0
With MioRst
Do While IntNuovo = vbYes
strMsg1 = "Digitare il codice di replica"
intInput = InputBox(Prompt:=strMsg1, Title:="Codice di replica")
If intInput = 999 Then
    Exit Do
End If
    .AddNew
    !LOC = Me!LOC
    !PARC = Me!PARC
    !ANNO1 = Me!ANNO1
    !REPLIC = intInput
    !ANNO2 = Me!ANNO2
    !MADRE = Me!MADRE
    .Update
    Numero = Numero + 1
Loop
.Close
End With
Set MioRst = Nothing
MioDB.Close
Set MioDB = Nothing
strMsg = "Inserite N° " & Numero & " repliche"
IntFinestraMsg = vbExclamation
IntNuovo = MsgBox(strMsg, IntFinestraMsg, strTitolo)
End Sub
Spero che fosse ciò che volevi e qualcosa non è chiaro fatti vivo.


Grazie ...
oro lo provo.
Buona giornata.
PS: e scusami se ho posto 2 lettere... 
Ivan

 ha scritto nel messaggio
news:goh19tkbgmb6jcj61...@4ax.com...

Mi ero dimenticato di dirti che quando hai finito di ottenere le repliche,
nella inputBox devi digitare 999.


Grazie...
Funziona benissimo (ho sostituito 999 con "esci").
Ciao.
Ivan