schau dir mal in der Hilfe die Formeln SVERWEIS bzw. WVERWEIS an.
Gruß, Kai
Suche mal in der NG unter Inhaltsverzeichnis.
Gruß
Willi
Dein Tabellenaufbau ist nicht so, daß man dies leicht erreicht.
Pack die Daten je eines Geräts in nur eine Zeile _einer_ Liste, in der _alle
Geräte_ stehen.
Nun kannst Du
a) in einem _einzigen_ Gerätedatenblatt mit SVERWEIS die Gerätedaten
übersichtlich ausgeben oder
b) an Ort und Stelle in Deiner Liste anfrageübereinstimmende Geräte
anzeigen.
--
Hallo + Gruss Alexander (WinXP Home SP1 - Office 2000 SP3) 6----5----7-2
"Alexander Wolff" wrote:
Hallo.
Danke erstmal. Es funktioniert aber einfach nicht so wie es soll. Gibt es
denn nicht eine leichtere Lösung? Ich versuch jetzt mal hier ein Beispiel zu
zeigen:
Name Vorname Alter Geburtstag
A B 20 21.03.2005
C D 22 12.08.2000
C E 19 24.05.1999
F G 23 21.032005
So in der Art sieht meine Tabelle(2) aus, nur mit Geräten eben. Nun möchte
ich in Tabelle(1) in ein Tabellenfeld ein Suchkriterium eingeben, welches
eins von den vieren da oben sein kann. Dann sollen in Tabelle(1) unterhalb
meines Suchkriteriums alle Datensätze aufgelistet werden, in etwa so:
Suchkriterium: 21.03.2005
Name Vorname Alter Geburtstag
A B 20
21.03.2005
F G 23
21.03.2005
So sollte dann das Ergebnis aussehen. Wenn du dazu noch eine Idee hättest,
wäre das super. Ich bin schon am verzweifeln.
Irgendwie klappt das bei mir nicht mit dem SVERWEIS und WVERWEIS.
MfG Alexander
wenn man die Daten in einer Maske darstellt würdest du ja keine Auflistung
sondern immer 1 Satz sehen dein Bsp.
A B 20 21.03.2005 weiterblätten
F G 23 21.03.2005
du solltest es mit dem Autofilter probieren. markiere Spalte D (Geburtstag)
wähle dann -> Daten > Filter ->Autofilter und dann kannst du 21.03.2005
wählen und hast dein gewünschtes Ergebnis.
mfG Wolfgang
> So in der Art sieht meine Tabelle(2) aus, nur mit Geräten eben. Nun möchte
> ich in Tabelle(1) in ein Tabellenfeld ein Suchkriterium eingeben, welches
wer lesen kann ist klar im Vorteil, da nützt die der Autofilter nix,
kann es den auch VBA sein ?
mfg Wolfgang
"Wolfgang Habernoll" wrote:
> Hallo,
wenn du mir sagst, wie es geht dann ja. Weil mit VBA habe ich echt noch
nicht viel gemacht. Meistens haben die Sachen dann funktioniert, wenn ich
lange rumprobiert habe, ohne wirklich zu wissen, was ich da mache. Also,
falls du eine leicht verständliche Anleitung hast, wäre die mir sehr
willkommen.
Vielen Dank im Voraus.
Alexander
>
>
>
>
> wenn du mir sagst, wie es geht dann ja. Weil mit VBA habe ich echt noch
> nicht viel gemacht. Meistens haben die Sachen dann funktioniert, wenn ich
> lange rumprobiert habe, ohne wirklich zu wissen, was ich da mache. Also,
> falls du eine leicht verständliche Anleitung hast, wäre die mir sehr
> willkommen.
ich versuche es mal. Da ich deine Tabelle nicht genau kenne, bleiben wir mal
bei deinem geposteten Bsp. Du musst dann halt die Bereiche entsprechend
anpassen. !* Voraussetzung ist aber die Quelldaten stehen in einem "Block"
und nicht verteilt in der Tabelle, und die Spalten im Zielbereich sollten
frei für die Daten sein* , zum testen solltest du nicht deine Originale
nehmen (so etwas machen manche Leute).
Mein Vorschlag zum Suchkriterium, markiere in Tab2 die Spalte D
(Geburtstage) und gebe ihr mit Einfügen->Namen->definieren einen Namen. Dann
markiere in Tab1 die Zelle E1 und erstelle eine Liste
Daten->Gültigkeit->zulassen Liste, Quelle =deinNamen. Du kannst du noch eine
CheckBox1 aus der Steuerelementetoolbox mit der enschieden wird ob die
Zieldaten in Tab1 dazu oder neu geschriben werden. Ist im Code schon drin.
Ich hoffe der Code ist versändlich, hier sind die Spalten A-D festgelegt,
die belegten Zeilen werden automatisch erkannt.
Nun braucht du nur noch den Code ins Worksheet_Change Ereignis von Tabelle1
kopieren und es kann losgehen. Es ist getestet und klappt.
Private Sub Worksheet_Change(ByVal Target As Range)
' E1 ist dein Tabellenfeld für das Suchkriterium
If Target.Address <> "$E$1" Then Exit Sub
Dim myQuell As Worksheet
Dim myZiel As Worksheet
Dim myDatenBereich As Range
Dim myErstFund As String
Dim myFund As Range
Set myQuell = Worksheets("Tabelle2") ' hier stehen die Daten
Set myDatenBereich = myQuell.Range("A2:D" &
myQuell.Range("D65535").End(xlUp).Row)
Set myZiel = Worksheets("Tabelle1") ' hier sollen die gewählten hin
'' Ziel für neuen Eintrag leeren !!! Bsp entpricht Spalte A-D (wie in
Quelle)
If CheckBox1 Then '' wenn alte List gelöscht werden soll
If myZiel.Range("D2") <> Empty Then
myZiel.Range("A2:D" &
myZiel.Range("D1").End(xlDown).Row).ClearContents
End If
End If
With myDatenBereich
Set myFund = .Find(Target, LookIn:=xlValues)
If Not myFund Is Nothing Then
myErstFund = myFund.Address
Do
myDatenBereich.Rows(myFund.Row - 1).Copy
myZiel.Paste Destination:=myZiel.Range("A" &
myZiel.Range("D65535").End(xlUp).Row + 1)
Set myFund = .FindNext(myFund)
Loop While Not myFund Is Nothing And myFund.Address <> myErstFund
End If
End With
End Sub
mfG Wolfgang