Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
796to800
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
796to800
796to800
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spaltennummer finden für Array

Spaltennummer finden für Array
01.09.2006 12:09:03
Alex
Hallo,
stoß grad wieder an die Grenzen meines VBA-Wissens und meiner Geduld.
In meiner Datei befinden sich Daten: Ressourcen (in Zeilen) und Charakteristika (in Spalten), die bei Vorhandensein im Kreuzungsfeld mit einem "x" gekennzeichnet werden. Mittels Kontrollkästchen möchte ich Filter ansteuern, die mir für das entsprechende Merkmal (Spaltenname=Kontrollkästchenname)nur die 'gekreuzten' heraussucht.
Bislang hab ich das so umgesetzt:

Private Sub chkMerkmal1_Change()
c = 0
Do
c = c + 1
Loop Until Cells(2, c).Value = "Merkmal1"
Merkmal1Filter = chkMerkmal1.Value
If Merkmal1Filter Then
Range("A1").AutoFilter _
Field:=19, _
Criteria1:="x"
Else
Range("A1").AutoFilter _
Field:=19
End If
End Sub

Da ich nicht alleiniger Anwender sein werden, kann es passieren, dass Spalten neu eingefügt werden. Somit würde sich die Spaltennummer ändern und der Filter wäre nicht richtig gesetzt.
Daher dachte ich mir, dass beim Initialisieren meines Formulars es sinnvoll wäre, die Spaltennummer für die Merkmale/Kontrollkästchen in ein Array einzulesen und dann von da aus darauf zugreifen zu können.
Keine Ahnung, ob das zu umständlich ist, aber ich wüßte sonst auch keinen Weg, wenn ich vermeiden will, es in die Change-Prozedur für jedes Kontrollkästchen zu schreiben.
Danke Alex

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spaltennummer finden für Array
01.09.2006 19:03:06
ChrisL
Hallo Alex
Falls ein Merkmal hinzukommt, müsstest du auch die Anzahl CheckBoxen verändern, deshalb ein Gegenvorschlag mit ComboBox.
https://www.herber.de/bbs/user/36352.xls
Gruss
Chris

Private Sub ComboBox1_Change()
With Worksheets("Tabelle1")
.Cells.AutoFilter
If ComboBox1 <> "" Then .UsedRange.AutoFilter Field:=ComboBox1.ListIndex + 1, Criteria1:="x"
End With
End Sub


Private Sub CommandButton1_Click()
Unload Me
End Sub


Private Sub UserForm_Initialize()
Dim iSpalte As Integer
With Worksheets("Tabelle1")
.Cells.AutoFilter
For iSpalte = 1 To .Range("IV1").End(xlToLeft).Column
ComboBox1.AddItem Cells(1, iSpalte)
Next iSpalte
End With
End Sub

Anzeige
AW: Spaltennummer finden für Array
05.09.2006 10:32:27
Alex
Besten Dank Chris,
hab jetzt eine andere Lösung gefunden, die sich ganz gut macht und auch meine Anwender zufrieden stellt. Dennoch ist es immer super, andere Vorschläge anzusehen!!!
Vielen Dank

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige