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

SQL VBA - Gib alles zurück in W HERE Klausel

Frage Entwicklung Datenbanken

Mitglied: loki99

loki99 (Level 1) - Jetzt verbinden

28.05.2010 um 08:27 Uhr, 3246 Aufrufe, 3 Kommentare

Hallo liebe Administrator Mitglieder.

Ich habe folgendes Problem, bei dem Ihr mir bestimmt weiterhelfen könnt.

Ich habe in Excel mehrer Dropdownfelder erzeugt, in welchen variable Werte und immer der Wert "Alles" steht. Nun suche ich eine SQL Anweisung, welche mir alle Werte zurüchgibt, wenn alles ausgewählt wird. Zur genaueren Erleuterung ein kurzes Beispiel: ich habe ein Dropdownfeld Autos mit den Werten "Alles" ," BMW" ,"Audi" und ein Dropdownfeld Fahrer mit den Werten "Alles" ," Müller" "Schimdt". Mun sollen alle Kombiantionen möglich sein. z.. Alle Autos Fahrer Müller oder Alle Autos Alle Fahrer.

Gibt es eine Möglichkeit Wildcards nach der Where Bedingung einzusetzen?


Meine Idee ist:
....
.Open "SELECT * FROM Tabelle WHERE Auto = ComboBoxAutos AND Fahrer = ComboBox Fahrer"
.....

Dies funktioniert auch, wenn ein bestimtes Auto und Farher ausgewählt ist.

Über Anregungen und Lösungsvorschläge würde ich mich sehr freuen.
Vielen Dank für Eure Bemühungen schon einamal in Vorraus.
Mitglied: Edi.Pfisterer
28.05.2010 um 09:35 Uhr
Hallo!
Ich habe von Excel oder VBA keine Ahnung, aber von SQL...

Die richtige Syntax muesste Lauten:

SQL = "SELECT * FROM Tabelle WHERE ((Auto = ComboBoxAutos) AND (Fahrer = ComboBox Fahrer))"

Wildcard in SQL ist leider nicht der * sondern %

da hast du (aber: siehe meine 2. Zeile...) nun 2 Möglichkeiten:
a) entweder gelingt es Dir, bei Alles als Value das zeichen % zu hinterlegen
b) eine Umformung (die in etwa so aussehen könnte - aber wie gesagt: ich von VBA nix Ahnung...)

01.
Autoauswahl = ComboBoxAutos 
02.
Fahrerauswahl = ComboBox Fahrer 
03.
if Autoauswahl = "Alles" then Autoauswahl = "%" 
04.
if Fahrerauswahl = "Alles" then Fahrerauswahl = "%" 
05.
SQL = "SELECT * FROM Tabelle WHERE ((Auto LIKE Autoauswahl) AND (Fahrer LIKE Fahrerauswahl))"
Hoffe, zumindest ein bisschen geholfen zu haben...
(falls sich sonst niemand finden sollte, der mit VBA mehr am Hut hat als ich...)

lg
Edi
Bitte warten ..
Mitglied: BigWim
28.05.2010 um 09:45 Uhr
Mit VBA kann ich auch nicht dienen, aber mit ein wenig Verständnis von Scripten. Ich würde ohne von der VBA-Syntax Ahnung zu haben so schreiben:
01.
if ComboBoxAutos = "Alles" and ComBoxFahrer = "Alles" then 
02.
    REM holt meines Wissens alle Datensätze 
03.
    SQL = "SELECT * FROM Tabelle  
04.
elseif if ComboBoxAutos = "Alles" and ComBoxFahrer <> "Alles" then 
05.
    REM alle Datensätze mit bestimmten Fahrer 
06.
    SQL = "SELECT * FROM Tabelle WHERE (Fahrer = ComboBoxFahrer)" 
07.
elseif if ComboBoxAutos <> "Alles" and ComBoxFahrer = "Alles" then 
08.
    REM alle Datensätze mit bestimmtes Auto 
09.
    SQL = "SELECT * FROM Tabelle WHERE (Auto = ComboBoxAutos)" 
10.
else 
11.
    REM alle Datensätze mit bestimmtes Auto & bestimmten Fahrer 
12.
    SQL = "SELECT * FROM Tabelle WHERE ((Auto = ComboBoxAutos) AND (Fahrer = ComboBox Fahrer))" 
13.
endif
Markus


[Edit Bibei] Codeformatierung [/Edit]
Bitte warten ..
Mitglied: loki99
28.05.2010 um 12:41 Uhr
Danke für die schnellen Antworten. In der Zwischenzeit habe ich bemerkt, dass das Problem "erst einmal" wo anderst liegt. Die Datenbank stuktur ist bei mir gegeben und kann nicht geändert werde. Aber nun zum Problem. Die Daten liegen nicht in einem Datensatz sonder über mehrere verteilt. Ich gehe einmal vom Autobeispiel weg.

Ich habe eine Tabelle mit 3 Spalten (Projekt, Verknüpfung , Kunde).

Projekt Verknüpfung Kunde
P1 hatKunde bmw
P1 hatMitarbeiter Müller
P2 hatKunde audi
P2 hatMitarbeiter Müller

........

Benötige eine Anweisung wie: Zeig mir alle Projekte, wo der Kunde BMW ist und der Mitarbeiter Müller heißt. Hier Ergebnis P1. Als muss über mehrere Datensätze verglichern werden.

Wünsche allen noch einen schönen Tag und herzlichen Dank für die Unterstützung.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst SQL-Dateien sortieren, kombinieren und filtern (6)

Frage von derapfelsaft zum Thema Datenbanken ...

VB for Applications
gelöst EXCEL VBA Zellen verbinden. MERGE (6)

Frage von Aximand zum Thema VB for Applications ...

VB for Applications
gelöst VBA Excel Skript - Hilfe! (1)

Frage von Compu2017 zum Thema VB for Applications ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (20)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Linux Desktop
KDE Slimbook (11)

Link von Frank zum Thema Linux Desktop ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

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