Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

MS Office Access, prüfen ob wert in einer anderen tabelle vorhanden

Frage Microsoft Microsoft Office

Mitglied: badni12

badni12 (Level 1) - Jetzt verbinden

16.07.2014, aktualisiert 15:29 Uhr, 4580 Aufrufe, 11 Kommentare

Hallo

Ich habe ein Insert Into Programm geschrieben, dass die Werte vom Formular x (basierend auf die Tabelle x) in die Tabelle gesamt überträgt, funktioniert einwandfrei
nun möchte ich aber, wenn ein gewisser Wert schon vergeben ist, dass das Programm eine MsgBox mit "Bereits Vorhanden" ausgibt

Das eindeutige Feld in der Tabelle x heißt "Muster_Nr", in der Tabelle gesamt "Musternummer"

Habe es mit dieser Methode probiert:
01.
If DCount("[Muster_Nr]", "x" = Forms!gesamt!Musternummer) Then 
02.
MsgBox "Bereits Vorhanden" 
03.
Else 
04.
DoCmd.RunSQL "INSERT INTO gesamt... 
05.
End If
auch habe ich diese Methode probiert:
01.
If DCount("*","gesamt", Musternummer='" & Me!Muster_Nr & "'") > 0 Then 
02.
MsgBox "Bereits Vorhanden", vbOKOnly, "Achtung!" 
03.
Else 
04.
DoCmd.RunSQL "INSERT INTO gesamt... 
05.
End If
Funktionieren beide nicht..

Jemand Tipps bzw kann mir jemand helfen?

Danke im Voraus

lg
Mitglied: drobskind
16.07.2014 um 14:54 Uhr
Hallo badni12,

ich schieße mal ins blaue...
Wenn du die Möglichkeit hast, die Spalte in deiner Tabelle als Unique zu kennzeichnen, bekommst du automatisch einen Fehler.
Ist bei MS-SQL-Server ohne weiteres möglich.
Oder wo willst du reinschreiben?

Gruß
Bitte warten ..
Mitglied: badni12
16.07.2014 um 14:58 Uhr
hallo

danke schon mal für die Antwort

versuche deinen Ratschlag mal umzusetzen

zur weiteren Erklärung
ich gebe die Daten im Formular x(basierend auf die Tabelle x) ein, drücke auf den Button "in gesamt speichern" und er schreibt mir den Datensatz in die Tabelle gesamt

lg
Bitte warten ..
Mitglied: badni12
16.07.2014 um 15:00 Uhr
hallo

kann nicht gehen weil von den alten Daten nicht alle befüllt sind.. (sind über 3000 DS ;))
Bitte warten ..
Mitglied: colinardo
16.07.2014, aktualisiert um 19:13 Uhr
Moin,
Die richtige Variante für DCount lautet:
01.
DCount("[Musternummer]","gesamt","[Musternummer] = " & Me!Muster_Nr)
http://office.microsoft.com/de-de/access-help/dcount-funktion-HA0012288 ...

wenn die Spalte "Musternummer" im Zahlenformat angelegt ist, darfst du keine einfachen Anführungszeichen um den Wert setzen, ansonsten schon.

Grüße Uwe
Bitte warten ..
Mitglied: badni12
17.07.2014, aktualisiert um 07:43 Uhr
Hallo Uwe

wenn ich das jetzt mit dieser Methode probier geht es auch nicht..

01.
If DCount("[Musternummer]", "gesamt", "[Musternummer] = " & Me![Muster_Nr]) Then 
02.
MsgBox "Schon vergeben" 
03.
Else 
04.
DoCmd.RunSQL "INSERT INTO gesamt... 
05.
End If
er zeigt mir immer die MsgBox an..

gibt es vlt eine andere Möglichkeit das zu prüfen?

Lg
Bitte warten ..
Mitglied: colinardo
17.07.2014 um 07:52 Uhr
dann machst du irgendwas falsch, geht hier seit eh und je so ... sorry.
Bitte warten ..
Mitglied: badni12
17.07.2014 um 08:04 Uhr
hallo

kannst du mir vlt noch tipps geben auf was ich achten muss, dass es möglicherweiße funktioniert?

namen und so sind alle korrekt geschrieben..

lg
Bitte warten ..
Mitglied: colinardo
LÖSUNG 17.07.2014, aktualisiert um 08:32 Uhr
Bei Angabe von Formulartextfeldern solltest du immer zwischen "Value" und "Text" unterscheiden (das kann einen Unterschied machen!) deshalb gebe mal Text als abzufragende Eigenschaft an.
Wenn die Spalte Musternummer als Zahl formatiert ist so:
01.
If DCount("[Musternummer]", "gesamt", "[Musternummer] = " & Me.Muster_Nr.Text) > 0 Then 
02.
   MsgBox "Schon vergeben" 
03.
Else 
04.
   DoCmd.RunSQL "INSERT INTO gesamt... 
05.
End If
Wenn Leerzeichen in Musternummer vorkommen können und das Feld bzw. Spalte im Textformat ist, muss es natürlich so aussehen:
01.
If DCount("[Musternummer]", "gesamt", "[Musternummer] = '" & Me.Muster_Nr.Text & "'") > 0 Then 
02.
   MsgBox "Schon vergeben" 
03.
Else 
04.
   DoCmd.RunSQL "INSERT INTO gesamt... 
05.
End If
Bitte warten ..
Mitglied: badni12
17.07.2014, aktualisiert um 11:01 Uhr
vielen dank!!
der zweite code hat mir geholfen

der richtige code lautet

01.
If DCount("[Musternummer]", "gesamt", "[Musternummer] ='" & Me![Muster-Nr] & "'") > 0 Then
lg
Bitte warten ..
Mitglied: evolution
05.11.2014 um 13:01 Uhr
also ungefär so?
01.
Private Sub check_lks_vorhhanden() 
02.
    If DCount("*", "test_id" & Me.Test.Text & "' AND lks_id'" & Me.Kunde.Text & "'") > 0 Then 
03.
       MsgBox "Schon vergeben" 
04.
    Else 
05.
       MsgBox "Gibt es noch nicht" 
06.
       'Cmd.RunSQL "INSERT INTO sys_lks_noten ( kunden_id, test_id, punkte, max_punkte, datum ) SELECT [Formulare]![lks_erfassen]![ID] AS Ausdr1, [Formulare]![lks_erfassen]![Test] AS Ausdr2, [Formulare]![lks_erfassen]![Punkte] AS Ausdr3, [Formulare]![lks_erfassen]![erreichbare_punkte] AS Ausdr4, [Formulare]![lks_erfassen]![Datum] AS Ausdr5;" 
07.
    End If 
08.
End Sub
Bitte warten ..
Mitglied: colinardo
05.11.2014, aktualisiert um 13:11 Uhr
Zitat von evolution:

also ungefär so?
bitte in deinem Thread posten, merci ...
01.
If DCount("*", "sys_lks_noten","[test_id] = '" & Me.Test.Text & "' AND [lks_id] = '" & Me.Kunde.Text & "'") > 0 then 
02.
.... 
03.
.... 
04.
End if 
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
MS Office Excel - Formel wird angezeigt, aber nicht berechneter Wert!

Tipp von holli.zimmi zum Thema Microsoft Office ...

Microsoft Office
MS Office 365 - Excel stürzt ständig ab (2)

Frage von ribrob zum Thema Microsoft Office ...

Microsoft Office
MS Office History erweitern (1)

Frage von leofabian zum Thema Microsoft Office ...

Microsoft Office
gelöst SOF MS Office 2013 Home and Business 1User ger PKC (3)

Frage von FA-jka zum Thema Microsoft Office ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(1)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (26)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Brauche Hilfe: Mit (schnellem) WLAN Strecke überbrücken (23)

Frage von pierrehansen zum Thema LAN, WAN, Wireless ...

Basic
Programmierung von Windows Programmen (10)

Frage von Ghost108 zum Thema Basic ...