Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Case, IIF, Werte in Abhängigkeit von Bedingungen setzen
Gehe zu Seite 1, 2  Weiter
zurück: Maximalwert von Werten mehrerer Spalten ermitteln. weiter: doppelte Datensätze löschen, aber mit Bedingung ? Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
schikoli
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 09:49
Rufname:

Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hallo Experten,

ich habe eine Tabelle mit vier Spalten. Die vierte Spalte soll in Anhängigkeit der gesetzten Werte in den Spalten 1-3 mit Namen befüllt werden.
Ich habe das schon mit IIF(Spalte1='xyz', "Müller", " ") as Verantwortlich. Leider funktioniert das nicht, da ich nicht schreiben kann:
Code:
SELECT ...,
       IIf(Spalte1='xyz', "Torsten", " ") AS Verantwortlich,
       IIf(Spalte1='abc', "Ronny", " ") AS Verantwortlich
Ich habe das ganze dann in ein CASE Statement umgeschrieben - aber auch da bekomme ich Fehlermeldung.
Code:
SELECT ...,
       'Verantwortlich' = CASE WHEN Spalte1='xyz' THEN 'Torsten'
Ganz wichtig, und da habe ich gar keine Idee: in der Spalte 4 darf nur ein Wert gesetzt werden, wenn nicht zuvor schon in dieser Spalte
(durch das Zutreffen einer anderen Bedingung vorher) ein anderer Wert gesetzt wurde.

Hat jemand eine Idee, wie man das umsetzten kann?

VG Linda
Gek
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 10:11
Rufname:


AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Wunderschönen guten Morgen ;)
so genau weiterhelfen kann ich dir da auch nicht, aber zumindest bei dem zweiten Problem kann ich dir nen Tip geben.
Wie wäre es, wenn du in deine if abfrage mit reinnimmst, dass spalte 2 "abc" sein muss und spalte 4 leer sein muss, damit in deinem fall ronny eingetragen wird.

edit: also wenn spalte 1 =xyz, dann spalte 4 = thorsten
wenn spalte 2 = abc und spalte 4 = "leer", dann spalte 4 = ronny
wenn spalte 3 = def und spalte 4 = "leer", dann spalte 4 = horst
schikoli
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 10:18
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hallo Gek.

ja, das habe ich schon probiert:
soweit ich das richtig verstanden funktioniert das nicht, da iif(spalte2='abc' and Verantwortlich is NULL, "Ronny", " ") as Verantwortliche --> da bezieht sich Verantwortlich (Spalte4) auf Verantwortlich --> Zirkelbezug.

VG
Zed2k
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 10:25
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hi,
ich muss mal unterbrechen und eine kleine Zwischenfrage stellen. Soll nur ein Wert in Spalte 4 eingetrage werden, wenn die komplette Spalte 4 bisher noch leer ist? Wenn ja, wie entscheidet man, welcher Datensatz einen Wert in Spalte 4 bekommt? Oder meintest du, dass in Spalte 4 nur ein Wert eingetragen werden soll, wenn sie für den aktuell betrachteten Datensatz noch keinen Wert hat (quasi, wenn nicht die Spalte, sondern nur die Zelle leer ist)? Aber warum soll der Wert dan dort stehen bleiben, obwohl sich Spalte 1-3 verändern können und laut Bedingung ein neuer Wert zugewiesen werden müsste?

_________________
Grüße, Zed


Zuletzt bearbeitet von Zed2k am 16. Jan 2008, 10:31, insgesamt einmal bearbeitet
Gek
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 10:28
Rufname:


AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

bei ner einfachen IF THEN beziehung, wird doch geprüft ob die bedingungen stimmen und wenn ja, dann wird etwas getan, also wenn spalte 2 abc und spalte 4 leer, dann änder spalte 4, ist doch egal ob die bedingung dann noch passt oder nicht, da die ja nur einmal geprüft wird (zumindest wenn mir der schlaf nicht das hirn noch komplett vernebelt Razz )
schikoli
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 11:07
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

schikoli am 16. Jan 2008 um 09:40 hat folgendes geschrieben:
Hallo Zed,

also ich habe insgesamt 8 Personen, je nach den Daten in Spalten 1-3 werden Verantwortlichkeiten einer Aufgabe zugeordnet. Jede Aufgabe wird durch die Spalten 1-3 charakterisiert und unterschieden. Die Zuordnung der Verantwortlichkeiten (8 Namen) geschieht nach einem ausschlussverfahren - deswegen darf - wenn bereits eine Aufgabe einen Namen hat - kein neuer Wert gesetzt werden.

D.h ich habe nicht nur einen Wert, der in Spalte 4 gesetzt werden soll sondern 8 - (Namen)

das Ausschlussverfahren funktioniert wie folgt.

Angenommen

Torsten bekommt eine Aufgabe wo Spalte1 = abc
Ronny bekommt eine Aufgabe wo Spalte3 = 123

Aufgabe ----Spalte1------Spalte2-------Spalte3------Spalte4 (Namen)
1--------------abc-----------def------------345----------Torsten
2--------------abc-----------/---------------123---------Torsten
3--------------def-----------/ ---------------123---------Ronny

In abhängigkeit der Reihenfolge, wie ich die Spalte4 befülle, kann ich ausschließen, dass Aufgaben falsch zugeordnet werden. Deswegen muss ich vorher fragen, ob bei Aufgabe 3 noch Spalte 4 leer ist.

Ich hoffe, ich konnte dass verständlich rüber bringen

VG

schikoli am 16. Jan 2008 um 09:43 hat folgendes geschrieben:
hallo Gek,

ich probier noch einmal IF THEN

VG

Hallo Gek,

also ich weiß nicht wie das mit IF Then funktionieren soll.

Bsp:
Code:
SELECT sp, sp1, sp2, sp3,
       IIf(sp1 ='abc','Torsten', '' ),  IIf(sp3= '123','Ronny', '' ) AS sp4
FROM   t1;
da kommt Fehlermeldung wegen Alias

wie sollte deiner meinung nach der syntax aussehen?

VG
Zed2k
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 11:13
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hi,
du musst die IIf(if, then, else) schachteln nach dem Muster
Iif(Bedingung1, Sp4=..., IIf(Bed.2, Sp4=..., Iif(...))) AS Verantwortlich

Wenn die Spalten 1-3 die Aufgabe festlegen, kann man dann nicht ein System entwickeln, dass diese Abgrenzung in nur einer Spalte vornimmt? Notfalls über eine extra Tabelle, in der die Spalten 1-3 in allen vorkommenden Kombinationen gespeichert werden und zur Identifizierung einen eindeutigen Schlüssel erhalten. Dann könnte man in der Tabelle mit den Verantwortlichen einfach nur mittels diesem Schlüssel auf die Aufgabe referenzieren und hätte eine sehr einfache Möglichkeit den Verantwortlichen heraus zu finden. Man könnte den Verantwortlichen im Prinzip auch direkt in die Aufgabentabelle schreiben, aber ich schätze, dass dann ein Verantwortlicher mehrfach vorkommt. Vielleicht wär ein Überdenken des Datenmodells sinnvoll?

_________________
Grüße, Zed
Gek
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 11:22
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

so ungefähr hab ich das gemeint, obwohl ich die genaue syntax leider nicht gekannt habe Embarassed
schikoli
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 11:28
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hallo Zed,

ich habe folgende Abfrage ausprobiert
Code:
SELECT sp1, sp2, sp3,
       IIf(IIf(sp1='abc', Sp4='Torsten'), IIf(sp3='123', Sp4='Ronny')) AS SP4
FROM   t1;
Da kommt folgende Meldung
Zitat:
Von Alias SP4 verursachter Zirkelbezurg in der SELECT Liste der Abfragedefinition
Stimmt der Synatx?

VG
Zed2k
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 11:31
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hi schikoli,
der Syntax ist immer noch falsch. Dein Beispiel würde folgendermaßen richtig aussehen:
Code:
       IIf(sp1='abc', Sp4='Torsten', IIf(sp3='123', Sp4='Ronny', '')) AS SP4
Du musst Iif immer so, wie ein If-Then-Else befüllen. Zuerst die Bedingung, nach dem ersten Komma die Then-Klausel und nach dem zweiten Komma, die Else-Klausel oder ein neues If (was einem Else If entspricht).
_________________
Grüße, Zed
Gek
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 11:33
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

jetzt weiß ich auch warum bei mir das eine nicht funktioniert hat Very Happy
vielen vielen dank ;)
jetzt muss ich nur noch das andere schaffen^^
schikoli
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 12:03
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hallo Zed,

ich habe das Bsp übernommen und bekomme die selbe Fehlermeldung.
Code:
SELECT sp1, sp2, sp3,
       IIf(sp1='abc', Sp4='Torsten', IIf(sp3='123', Sp4='Ronny', '')) AS SP4
FROM   t1;
Gek, hast du das Bsp nachvollzogen? Funktioniert es bei dir ?
Zed2k
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 12:04
Rufname:

AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hi,
kannst du vielleicht eine Beispiel-Datenbank mit anonymisierten Daten erstellen?

_________________
Grüße, Zed
Willi Wipp
Moderator


Verfasst am:
16. Jan 2008, 12:07
Rufname:
Wohnort: Raum Wiesbaden

Re: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - Re: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Hi Folks,

was haltet Ihr von Wink
Code:
SELECT sp1, sp2, sp3,
       IIf(sp1='abc', 'Torsten', IIf(sp3='123', 'Ronny', '')) AS SP4
FROM   t1;

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Zed2k
Im Profil kannst Du frei den Rang ändern


Verfasst am:
16. Jan 2008, 12:08
Rufname:


AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen - AW: Case, IIF, Werte in Abhängigkeit von Bedingungen setzen

Nach oben
       Version: Office 2003

Ha... ich bin ein Klops. Ist erstaunlich, wie manche Denkfehler einfach nur übersehen werden. Danke Willi!
_________________
Grüße, Zed
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: UserEingabe aus DialogBox als Kriterium in 2 Abfragen setzen 3 MarcMM 1000 05. Sep 2005, 14:49
Willi Wipp UserEingabe aus DialogBox als Kriterium in 2 Abfragen setzen
Keine neuen Beiträge Access Tabellen & Abfragen: Max. Werte über mehrere Datensätze ermitteln 1 Gast 1200 22. Aug 2005, 14:56
lothi Max. Werte über mehrere Datensätze ermitteln
Keine neuen Beiträge Access Tabellen & Abfragen: autowert auf 0 setzen 2 heirnele 4353 21. Jul 2005, 12:39
heirnele autowert auf 0 setzen
Keine neuen Beiträge Access Tabellen & Abfragen: Werte Zählen, aber bestimmte nicht dazu addieren 1 MrMarley 897 14. Jun 2005, 02:21
tobes Werte Zählen, aber bestimmte nicht dazu addieren
Keine neuen Beiträge Access Tabellen & Abfragen: Numerische Werte in als Text definiertem Feld 4 Terminator 811 25. Apr 2005, 07:50
stpimi Numerische Werte in als Text definiertem Feld
Keine neuen Beiträge Access Tabellen & Abfragen: Attribut unter gewissen Bedingungen auf "required" 6 Noob 592 06. Apr 2005, 10:46
Noob Attribut unter gewissen Bedingungen auf "required"
Keine neuen Beiträge Access Tabellen & Abfragen: Laufende Nummer in Abhängigkeit von Gruppierungen 1 Rudus 1792 11. März 2005, 11:43
lothi Laufende Nummer in Abhängigkeit von Gruppierungen
Keine neuen Beiträge Access Tabellen & Abfragen: Berechnung in Abhängigkeit vom Datum 1 Christian22 1004 03. Feb 2005, 14:00
lothi Berechnung in Abhängigkeit vom Datum
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage die werte anfügt 2 Zoran 495 26. Jan 2005, 14:24
Zoran Abfrage die werte anfügt
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage Top2 Werte 2 Zoran 1209 25. Jan 2005, 18:03
Zoran Abfrage Top2 Werte
Keine neuen Beiträge Access Tabellen & Abfragen: spalte dynamisch und in abhängigkeit vom wochtag füllen 3 doc77 812 10. Jan 2005, 13:32
lothi spalte dynamisch und in abhängigkeit vom wochtag füllen
Keine neuen Beiträge Access Tabellen & Abfragen: Löschabfrage mit mehreren Bedingungen 5 Gast 1416 15. Nov 2004, 16:01
Skogafoss Löschabfrage mit mehreren Bedingungen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Frontpage Forum