Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

textfeldinhalt über kontrollkästchen an tabelle anfügen!





Frage

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 1 von Teddy7

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

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

Du hast doch Code (s.o.). Der ist nur entsprechend zu ändern

Antwort 4 von jack555

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

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