Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
144to148
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
144to148
144to148
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Versteckte Zeilen übergehen

Versteckte Zeilen übergehen
07.08.2002 15:21:36
Jann
Hallo!
Kann mir jemand sagen, wie man nur die Zeilen (welche ich aus einer Tabelle entnehme) in einer Textbox anzeigt, nachdem ein Autofilter aktiviert wurde?
Ich möchte nicht, dass alle Zeilen angezeigt werden.
Danke!
Gruss
Jann

25
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Versteckte Zeilen übergehen
07.08.2002 16:32:40
Frank P
Hallo

wie Du eine Listbox füllst müsstest Du hier im Downloadbereich finden.
Und mit der "SpecialCells-Methode" kannst Du die "unsichbaren finden:

zb:
If Cells(i, 5) = xlCellTypeVisible Then
Userform1.Lstbox1.AddItem
Else
End If
*ungetestet**

Gruss Frank P

Re: Versteckte Zeilen übergehen
07.08.2002 17:01:58
Jann
Danke, aber ich möchte ja nur die sichtbaren sehen, nicht die, die versteckt sind!
Vielleicht weisst du wie?
Re: Versteckte Zeilen übergehen
07.08.2002 17:26:11
mattis
Vielleicht:

gruß
mattis

Danke schön!!!!!
07.08.2002 17:28:15
Jann
War fast zu einfach ;o) *schäm*
Jedenfalls vielen Dank!
Moment mal...
07.08.2002 17:31:08
mattis
... xlCellTypeVisible sind die sichtbaren Zellen ...

gruß
mattis

Anzeige
klappt nicht...
07.08.2002 18:10:15
Jann
nun ja, ich möchte die Kriterien in einer Userform in verschiedenen Textboxen anzeigen. Irgendwie haut das einfach nicht hin. Habe auch ein Beispiel gefunden, aber es funzt einfach nicht! Werde noch verrückt!

'ClassModule: frmFilter

Private Sub cmdFilter_Click()
If ActiveSheet.FilterMode = False Then
ActiveSheet.FilterMode = True
End If
Range("A1").AutoFilter field:=5, Criteria1:="AH" & _
txtfilter.Text, Operator:=xlOr
ActiveCell = txtfilter.Value

End Sub
Private Sub cmdWeiter_Click()
Unload Me
End Sub
'StandardModule: basMain

Sub DialogAufruf()
frmFilter.Show
End Sub

Anzeige
Give it a try...
07.08.2002 19:13:59
mattis
Der Beispiel-Code kann so meiner Meinung nach auch
nicht stimmen, da der Autofilter zwar einen Or-Operator
aber kein zweites Kriterium hat.

Ich helfe Dir gerne eine Lösung zu schustern, dafür müßte
ich aber wissen welche Kriterien DEIN Autofilter hat.
(z.B nichtleere Felder, Top10 oder Benutzerdefiniert).

Willst Du das Ergebnis in eine Textbox, oder wie Frank
geschrieben hat, in eine Listbox einlesen.
Soll die Text/Listbox in einer Userform sein?

gruß
mattis

Re: Give it a try...
07.08.2002 19:18:28
Jann
Danke für die Antwort!
Bin echt am Verzweifeln, zudem noch Neuling.
Also, ich habe nur 2 Kriterien. Die konnte ich auch filtern mit diesem Code:
Private Sub UserForm_Initialize()
Sheets("feuil1").Select
Range("BB2").Select
gstrRangeListe = "BB2:BB" & Selection.End(xlDown).Row
Call RemplirListe(Me, "Feuil1", gstrRangeListe, "cboGenre")

Range("BA2").Select
gstrRangeListe = "BA2:BA" & Selection.End(xlDown).Row
Call RemplirListe(Me, "Feuil1", gstrRangeListe, "cboBranche")

End Sub

Private Sub cmbOk_Click() '

Dim Branche As String
Dim Genre As String

Branche = choix.cboBranche.Value
Genre = choix.cboGenre.Value
Columns("E:F").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="=*" & Branche & "*", Operator:=xlAnd
Selection.AutoFilter Field:=2, Criteria1:="=*" & Genre & "*", Operator:=xlAnd

Unload Me
Sheets("Feuil1").Activate
Application.ScreenUpdating = False
Application.WindowState = xlMaximized
AppActivate "Microsoft Excel"
Range("A1").Select


End Sub

Nun möchte ich jedoch diese beiden Kriterien in einer Userform in verschiedenen Textboxen angeben.
Verstehst du was ich meine?

Anzeige
ups...
07.08.2002 19:24:53
Jann
ah, zum Füllen der Liste habe ich diesen Code in ein Modul eingefügt:

Public Sub RemplirListe(ByRef frm As UserForm, sh As String, rge As String, cbo As String)
Worksheets(sh).Activate
frm.Controls(cbo).RowSource = Worksheets(sh).Range(rge).Address
End Sub

Thinking... (o.T.)
07.08.2002 19:43:09
mattis

Re: Thinking... (o.T.)
07.08.2002 20:30:48
mattis
So, hat ne Weile gedauert, bis ich das nachgebaut
und mich reingedacht habe.

Folgende Modifikationen sind mir eingefallen:

Laut Hans ist Select und Activate Teufelszeug.

So, nun zum weiteren Verständnis:
Du lädst beim Starten der Userform die Brachen Spalte(BB)
und die Genres Spalte(BA) in die Comboboxen ein.
Wählst nun jeweils ein Punkt aus der Combobox aus.
(Ich habe nun mal stand. den jeweils ersten eingelesen).

Und wenn Du nun den CommandButton drückst, dann
sollen die Spalten E und F nach den Kriterien Branche
und dann noch nach Genre sortiert werden. Richtig soweit?

Anzeige
genau so...
07.08.2002 20:53:12
Jann
Danke schon mal, dass du dich so ins Zeug legst für mich! Das ist wirklich lieb!
Genau so wie du es beschrieben hast ist es richtig! Die Spalten A-K werden dann nach Genre oder Branche sortiert. Soweit funktioniert es auch. Das Problem ist, dass sobald der Filter eingeschaltet ist, übernimmt die Combobox alle Zeilen wieder. Dies möchte ich jedoch nicht! Es sollen in einer neuen Userform mit verschiedenen Textboxen eine Zeile nach der anderen aufgelistet werden, also in den Textboxen. Z.B. Kolonne A1-K1 in Textbox1, Kolonne A2-K2 in Textbox2 etc. Aber erst nach der Filtrierung.
Poah, bisschen kompliziert oder?
Anzeige
Huh, komplifiziert...
07.08.2002 21:16:47
mattis
Also ich hoffe Du hast Dir eine Scheibe Zeit mitgebracht ; )

Meiner Meinung nach ist es doch sinnvoll die Comboboxen
so zu lassen wie sie sind, denn sie werden nur einmal
beim Start der Userform eingeladen, und sollten dann
doch alle Branchen und Genres zur Verfügung stellen.

Ich würde nun abraten mehrere Textboxen zu benutzen.
Stattdessen könnte man auf derselben Userform eine
ein TabStrip(Register) mit einer Textbox anlegen.
Über die Registerkarten könnte man sich dann durchklicken
und es wird jeweils der dazugehörige Text in die
Textbox eingelesen.

Oder, wenn es gar zu viele Register wären (ich habe keinen Überblick über Deine Datenmengen) könnte man mit Hilfe eines SpinButtons (Drehfeld-Button) sich durch die Einträge "durchzappen".

Das Ganze hätte den Vorteil, das Du komplett von der Tabelle
wegkommst, Dich aber komfortabel über die Comboboxen
durch die Tabelle hindurchnavigierst, und ähnlich einer
Karteikarte das Ergebnis in derselben Userform vorliegen
hast.

What do ya think?

Anzeige
Re: Huh, komplifiziert...
07.08.2002 21:25:46
Jann
ui, das wäre natürlich Klasse! Ich dachte, es wäre nicht möglich, sich so durchzuzippen. Wenn das funktioniert...ui, das wäre echt der Wahnsinn!
Nur habe ich leider null Ahnung von Tabstrip oder Spinbuttons.
Die Datenmenge ist nicht so riesig. Es werden schlussendlich ca. 300 Zeilen sein. Von Kolonne A-K.
Meinst du, dass dies zuviel ist?
Ergänzung...
07.08.2002 21:27:15
mattis
Nur dass keine Mißverständnise entstehen:

Die Comboboxen haben alle Branchen und Genres
anwählbar. Die Textbox kann aber nur die sichtbaren
(gefilterten)Zeilen der Tabelle übernehmen. Die
Userform könnte beim Laden der Tabelle automatisch
erscheinen.

Anzeige
Das wir nicht ins Abseits geraten : )
07.08.2002 21:30:30
mattis
Also wäre die SpinButton-Variante Dein Favorit?
Re: Das wir nicht ins Abseits geraten : )
07.08.2002 21:40:32
Jann
Ja, spinButton wäre echt der Hit!!!
Nochmal was...
07.08.2002 22:04:36
mattis
..wäre es nicht sinnvoll nur die Branchen beim laden
der Userform einzulesen und die Genres dynamisch je nach
Auswahl der Branche anzupassen?

So könnte ich auch auf einen Filterbutton verzichten, denn
sobald das Genre festgelegt ist kann ich den ersten Eintrag
in das Textfeld übernehmen. Dazu wäre ein Zähler möglich,
der die Anzahl der Genreeinträge "Eintrag 5 von 8" angibt.

Wie Du siehst sind die Möglichkeiten vielfältig. Ich kann
Dir aber nicht versprechen, das heute noch hinzucoden.
Aber anfangen kann ich mal...

gruß mattis

Anzeige
Re: Nochmal was...
07.08.2002 22:13:07
Jann
weiss ich nicht, ob dies sinnvoll wäre, da man immer wieder eine neue Suche machen kann. Das heisst, die Branchen und Genres werden immer wieder neu aufgerufen.
Aber man könnte doch jedesmal die Userform wieder neu "erblicken" lassen, also könnte man in der Tat die Branchen und Genres nur beim Laden einlesen.
In der Tat sind die Möglichkeiten vielfältig! Ich bin erstaunt über dein Wissen! Seit wann kniffelst du denn in VBA?
Du brauchst dir nicht den Abend um die Ohren zu schlagen! Ich bin dir schon so extrem dankbar für deine Hilfe und die Zeit die du investierst hast!
Vielen Dank!
Jann
Anzeige
Sagen wir mal fortgeschrittener Einsteiger...
07.08.2002 22:22:21
mattis
Wenn Dich das ermutigt: Erst seit Anfang Juni
beschäftige ich mich mit der VBA-Programmierung.

An dieser Stelle: Schier grenzenloses Lob an dieses
Forum - besser als jedes Buch. Und um den Forumteil-
nehmern nicht auf die Nerven zu gehen hab ich ab und
zu mal die Online-Hilfe befragt.

Ich werde mir heute nicht mehr den Abend um die Ohren
schlagen. Aber ich würde sagen: Ich bleib dran.

see ya tommorow
geruhsame Nacht

mattis

Danke und gute Nacht!!!
07.08.2002 22:36:00
Jann
Erst seit Juni! Puh....Hut ab!
Na dann schlaf gut! Du hast es dir verdient ;o)
Danke für alles!
Jann
In alter Frische...
08.08.2002 14:00:55
mattis
Hallo Jann,
melde Dich doch bitte mal, wenn Du online bist
Vorschlag...
08.08.2002 16:02:28
mattis
Vorsicht, nicht erschrecken:

Servus Jann,

Ich habe Dir leider kein Bild mailen können,
daher habe ich mich entschieden Dir mein
Layoutentwurf per Code zu übermitteln.
Dadurch habe ich die Sub Ctrldsgn entworfen,
die ich (und vielleicht auch noch andere) gut
gebrauchen kann. Füge die zwei Subs bei Dir
hinzu und rufe in Userform_Initialize die
Sub ReDesignForm auf.

Als Grundmuster brauchst du eine Userform mit
Frame1:
mit Label1, Label2, cmdOk, cboGenre, cboBranche
Frame2:
mit Label3, SpinButton1, TextBox1

So könnte es also aussehen...

gruß
mattis

Re: Vorschlag...
10.08.2002 17:47:04
Jann
hallo Mattis! Danke für deinen Vorschlag! Leider habe ich nur im Büro Internet, deshalb meine Verzögerung. Danke jedenfalls für deine Mühe! Ich werde deinen Code ausprobieren und halte dich auf dem Laufenden!
Danke schön!
Gruss
Jann
Das is ja n'Ding!!!
10.08.2002 18:06:33
Jann
Hey, das is ja n'Ding! Ich verstehe nun gor nix mehr von deinem Code! Zu hohe Schule für mich! Nun ja, jedenfalls klappts und es ist schön anzusehen, wie das funzt!
Tausend Dank für deine Hilfe! Ich hoffe, dass ich dir auch eines Tages irgendwie entgegenkommen kann........nun, wenn ich so deinen Code sehe, glaube ich kaum....würde es jedoch gerne!
Danke und ein wunderschönes Wochenende!
Gruss
Jann

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige