textfeldinhalt über kontrollkästchen an tabelle anfügen!
hi leute,
ich hab folgendes problem:
ich hab sechs versch. textfelder deren inhalt per button an eine tabelle angehängt wird. funktioniert soweit bestens...
mein problem ist aber dass man auswählen können sollte zwischen sechs versch. tabellen. wo der inhalt der txt. felder hinkommt^^
bis jetzt :
[/code]Option Compare Database
Private Sub cmd_aufnehmen_Click()
Dim rsAdresse As DAO.Recordset
Dim intMsgBoxResult As Integer
intMsgBoxResult = MsgBox("Wollen Sie die erfassten Daten eintragen?", _
vbYesNoCancel, "Speichern?")
Select Case intMsgBoxResult
Case 6, 7 'Yes und No
Set rsAdresse = CurrentDb.OpenRecordset("tb_Regalauslegung", dbOpenTable)
With rsAdresse
.AddNew
.Fields("Deutsch") = Me!deutsch
.Fields("Englisch") = Me!englisch
.Fields("Spanisch") = Me!spanisch
.Fields("Italienisch") = Me!italienisch
.Fields("Französisch") = Me!französisch
.Fields("Griechisch") = Me!griechisch
.Update
End With
End Select
deutsch = " "
englisch = " "
spanisch = " "
italienisch = " "
französisch = " "
griechisch = " "
End Sub
wenn wer ne antwort weiß wäre das super !!
grüße jakob
Antwort schreiben
Antwort 1 von Teddy7 vom 07.08.2019, 08:25 Options
zu ersetzen wäre natürlich nur der Tabellenname in
Set rsAdresse = CurrentDb.OpenRecordset("tb_Regalauslegung", dbOpenTable)
also:
dim xtabname as string
if auswahlfeld = 1 then
xtabname = "tb_Regalauslegung"
elseif auswahlfeld = 2 then
.......usw...........
end if
und dann weiter unten
Set rsAdresse = CurrentDb.OpenRecordset(xtabname, dbOpenTable)
ordentlichen Close nicht vergessen:
rsadresse.close
set rsadresse = nothing
Gruß
Teddy
Antwort 2 von jack555 vom 07.08.2019, 14:20 Options
hi teddy,
vielen dank für die rasche antwort!
da ich access beginner bin hab ich noch ein wenig probleme mit dem programmieren...
wo genau soll ich die if funktion in meinem code einfügen?
danke
bye
Antwort 3 von Teddy7 vom 08.08.2019, 09:25 Options
Du hast doch Code (s.o.). Der ist nur entsprechend zu ändern
Antwort 4 von jack555 vom 08.08.2019, 09:34 Options
hi ,
ja, ich weiß... hab meinen code auch entsprechend verändert nur es funktioniert leider noch nicht!
sorry wegen den umständen, aber wie gesagt bin ich access anfänger.
wo liegt mein fehler :
Option Compare Database
Private Sub cmd_aufnehmen_Click()
Dim rsAdresse As DAO.Recordset
Dim intMsgBoxResult As Integer
Dim xtabname As String
intMsgBoxResult = MsgBox("Wollen Sie die erfassten Daten eintragen?", _
vbYesNoCancel, "Speichern?")
Select Case intMsgBoxResult
Case 6, 7 'Yes und No
If k_cv = 1 Then
xtabname = "Tabelle1"
ElseIf k_cv = 2 Then
xtabname = "Tabelle2"
End If
With rsAdresse
.AddNew
.Fields("Deutsch") = Me!deutsch
.Fields("Englisch") = Me!englisch
.Fields("Spanisch") = Me!spanisch
.Update
End With
End Select
Set rsAdresse = CurrentDb.OpenRecordset(xtabname, dbOpenTable)
rsAdresse.Close
setrsadresse = Nothing
deutsch = " "
englisch = " "
spanisch = " "
End Sub
bye
Antwort 5 von Teddy7 vom 08.08.2019, 12:16 Options
Wenn man nicht weiß was man tut, dann soll man die Finger davon lassen.
Option Compare Database
Private Sub cmd_aufnehmen_Click()
Dim rsAdresse As DAO.Recordset
Dim intMsgBoxResult As Integer
Dim xtabname As String
intMsgBoxResult = MsgBox("Wollen Sie die erfassten Daten eintragen?", _
vbYesNoCancel, "Speichern?")
if intMsgBoxResult = vbyes then
If k_cv = 1 Then
xtabname = "Tabelle1"
ElseIf k_cv = 2 Then
xtabname = "Tabelle2"
End If
Set rsAdresse = CurrentDb.OpenRecordset(xtabname, dbOpenTable)
With rsAdresse
.AddNew
.Fields("Deutsch") = Me!deutsch
.Fields("Englisch") = Me!englisch
.Fields("Spanisch") = Me!spanisch
.Update
End With
End Select
rsAdresse.Close
setrsadresse = Nothing
deutsch = " "
englisch = " "
spanisch = " "
end if
End Sub