Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1568to1572
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
Inhaltsverzeichnis

Spalte suchen - Bereich festlegen - Inhalt zählen

Spalte suchen - Bereich festlegen - Inhalt zählen
10.07.2017 21:28:31
Ronnie
Hallo,
Ich habe folgendes Problem:
Userform:
1. Ich habe zwei Textboxen
2. Textbox1 soll in der Tabelle nach dem Inhalt suchen und die Spalte merken
3. Textbox2 soll ebenfalls suchen und anschließend den Bereich zwischen den zwei Spalten merken (inkl. Der jeweiligen Spalte)
4. Abzgl. Reihe 1 und 2 alle Zellen zählen, die einen Inhalt haben
5. In einem Label die Anzahl der belegten Zellen wiedergeben
Das ganze ohne die jeweilige Zelle oder Spalte auszuwählen...
Z.b
Reihe 1: 1, 2, 3 usw
Reihe 2: irrelevant
Reihe 3-50: Leere Zellen und welche mit Text
Userform:
Ich gebe in Textbox1 "15" und in Textbox2 "20" ein.
Jetzt zeigt mir das Label wieviele Zellen voll sind zwischen 15 und 20 (inkl. 15 und 20) in Reihe 3-50...
Vielen Dank

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Spalte suchen - Bereich festlegen - Inhalt zählen
11.07.2017 05:54:48
Hajo_Zi
Der Inhalt von TextBox1 wird in C15 gefunden, von Text Box2 I Z33. Du möchtest jetzt wissen wie viele Zellen im Bereich C15:Z33 gefüllt sind?
nur wenige schauen auf Deinen Rechner und sehen die Datei.
Ich möchte gerne den Fehler im Original sehen.
Ich baue keine Datei nach. Die Zeit hat schon jemand investiert.
Ein Nachbau sieht meist anders aus als das Original. Darum sollte das Original verlinkt werden.
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten anonymisieren bzw. pseudonymisieren.

Der Name einer hochgeladenen Mappe wird im Beitrag automatisch angezeigt, sodass es bei Verwendung von aussagekräftigen Namen leichter fällt, sie später im Ablageordner wiederzufinden und sie gedanklich einem bestimmten Thema zuzuordnen. Namen wie Test, Mappe, Beispiel usw. sind so allgemein, dass eine Zuordnung zu einem Thema unmöglich gemacht wird.
Anzeige
AW: Spalte suchen - Bereich festlegen - Inhalt zählen
11.07.2017 08:20:57
fcs
Hallo Ronnie,
das kann man etwa wie folgt lösen.
Der Code gehört in das Code-Modul des Userforms,wobei die Function zur Ermittlung der Spalten auch in einem allgemeinen Modul der Datei plaziert werden kann.
Gruß
Franz
Public Function fncSpalte(varWert As Variant, _
Optional bolTextvergleich As Boolean = True, _
Optional bolLetzte As Boolean = False, _
Optional Zeile As Long = 1, _
Optional wks As Worksheet) As Long
'Ermiitelt die Nummer der Spalte  mit dem Wert in der Zeile des Tabelenblatts
'Wird der Wert nicht gefunden wird als Ergebnis 0 zurückgegeben
'varWert = Wert nach dem gesucht werden soll
'bolTextvergleich = True --> angezeigter Text der Zelle wird verglichen _
= False --> Wert in der Zelle wird verglichen _
kann relevant sein für Zellen mit Zahl, Datum oder boolschem Inhalt
'bolLetzte = True --> Letzte Spalte mit dem Wert wird als Ergebnis zurückgegeben _
= False --> 1. Spalte mit dem Wert wird als Ergebnis zurückgegeben
'Zeile = Nummer der Zeile in der gesucht werden soll - Vorgabewert = 1
'wks = Tabellenblatt in dem gesucht werden soll - Vorgabe = aktivesTabellenblatt
Dim Spalte As Long
If wks Is Nothing Then Set wks = ActiveSheet 'Tabellenblatt in dem gezählt weden soll
fncSpalte = 0
With wks
For Spalte = 1 To .Cells(Zeile, .Columns.Count).End(xlToLeft).Column
If varWert = IIf(bolTextvergleich, .Cells(Zeile, Spalte).Text, _
.Cells(Zeile, Spalte).Value) Then
fncSpalte = Spalte
If bolLetzte = False Then Exit For
End If
Next
End With
End Function
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Spalte As Long
With Me.TextBox1
Spalte = fncSpalte(.Value, wks:=ActiveSheet)
If Spalte > 0 Then
'Spalte in Tag-Eigenschaft merken
.Tag = Spalte
Call prcZaehlen
Else
.Tag = ""
MsgBox "Eingabewert nicht gefunden"
Cancel = True
End If
End With
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Spalte
With Me.TextBox2
Spalte = fncSpalte(.Value, wks:=ActiveSheet)
If Spalte > 0 Then
.Tag = Spalte
Call prcZaehlen
Else
.Tag = ""
MsgBox "Eingabewert nicht gefunden"
Cancel = True
End If
End With
End Sub
Private Sub prcZaehlen()
Dim Spa_1 As Long, Spa_2 As Long
Dim Zei_1 As Long, Zei_2 As Long
Dim wks As Worksheet
If Val(Me.TextBox2.Tag) > 0 And Val(Me.TextBox1.Tag) > 0 Then
'Spalten aus Tag-Eigenschaft der Boxen auslesen
Spa_1 = Val(Me.TextBox1.Tag)
Spa_2 = Val(Me.TextBox2.Tag)
Set wks = ActiveSheet 'Tabellenblatt in dem gezählt werden soll
With wks
Zei_1 = 3
Zei_2 = .UsedRange.Row + .UsedRange.Rows.Count - 1
'oder fester Wert
'Zei_2=50
If Zei_2 

Anzeige
AW: Spalte suchen - Bereich festlegen - Inhalt zählen
11.07.2017 17:18:23
Ronnie
Vielen Dank, den Rest bekomme ich hin.

316 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige