Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Tabelle filtern nach Anzahl Stunden VBA
21.11.2021 09:56:34
Benita
Hallo alle :-)
dies ist mein erster Beitrag - bislang habe ich alle Probleme mit dem Stöbern im Forum gefunden. Doch hier habe ich schon einige Stunden vergeblicher Arbeit hineingesteckt und komme nicht weiter:
Ich habe eine Liste mit Projekten. Diese bestehen aus
einer laufenden Nummer
Projektname
Arbeitsbereich
Auftraggeber
Zeitsumme aller geleisteten Arbeitsstunden
und dem Projektstatus.
Ich möchte diese Liste filtern, und zwar soll die Möglichkeit bestehen, z.b. alle Projekte anzuzeigen, deren Zeitsumme über 100 Stunden liegt.
ich habe dafür die Werte der Zeitspalte in Double umgerechnet und erwartet, dass Excel es nun mit der Autofilterfunktion schafft, die entsprechenden Fälle anzuzeigen.
Bei der Projektnummer funktioniert es wunderbar, aber bei der Zeit verzweifle ich gerade.
dies ist der Code für die Filterfunktion:

Private Sub CB_Filtern_Click()
Dim c As Range
Dim SpalteS As String
Dim SpalteI As Integer
Dim Bereich As String   'um den Suchbereich zu definieren
Dim Operator As String '(=)
Dim Kriterium As Variant
Dim Kategorie As String
Dim last As Integer
If ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
End If
Kategorie = ComboBox_Filtern.Text
If Kategorie = "Projektnummer" Then
SpalteS = "C"
SpalteI = 1
Kriterium = CLng(ComboBox_Attr.value)
ElseIf Kategorie = "Projektbezeichnung" Then
SpalteS = "D"
SpalteI = 2
Kriterium = CStr(ComboBox_Attr.value)
ElseIf Kategorie = "Arbeitsbereich" Then
SpalteS = "E"
SpalteI = 3
Kriterium = ComboBox_Attr.value
ElseIf Kategorie = "Auftraggeber" Then
SpalteS = "F"
SpalteI = 4
Kriterium = ComboBox_Attr.value
ElseIf Kategorie = "Zeitsumme" Then
SpalteS = "G"
SpalteI = 5
Kriterium = CDbl(ComboBox_Attr.value * 60 / 1440)
ElseIf Kategorie = "Status" Then
SpalteS = "H"
SpalteI = 6
Kriterium = ComboBox_Attr.value
Else: Exit Sub
End If
last = newLast("Projekte", SpalteI)
Bereich = SpalteS & "8:" & SpalteS & last
Operator = ComboBox_Operator.Text
For Each c In ActiveSheet.Range(Bereich)
Select Case Operator
Case "=": If c.value = Kriterium Then c.AutoFilter SpalteI, Kriterium
Case "": If c.value > Kriterium Then c.AutoFilter SpalteI, Criteria1:=">" & Kriterium
Case ">=": If c.value >= Kriterium Then c.AutoFilter SpalteI, Criteria1:=">=" & Kriterium
Case "
Hier habe ich mal ein Bild davon, wie Liste und Userform aussehen (Sensible Daten entfernt):
Userbild
Vielen Dank für Hilfe :-)
Benita

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabelle filtern nach Anzahl Stunden VBA
21.11.2021 10:09:58
Hajo_Zi
Du bist im falschen Forum. Bildbearbeitung ist ein anderes.
Bilder lade ich mir nicht runter, da Excel damit nichts anfangen kann.
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Ich baue keine Datei nach, die Zeit hat schon jemand investiert.
Schau mal hier
Eine hochgeladene Arbeitsmappe erhöht die Wahrscheinlichkeit, dass Du eine Lösung für Dein Problem erhältst.
Erstelle folglich bitte eine Demomappe, aus der deine Aufgabenstellung klar erkennbar ist und lade diese hoch.
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten ändern. Schaue Datei
http://hajo-excel.de/gepackt/fremd/Datei_verschluesseln.zip
Falls Du den Download des Forums nicht benutzen möchtest, beachte bitte: von unsicheren Servern file-upload lade ich keine Datei herunter (lt. Einschätzung meines Virenprogramms)
Das ist nur meine Meinung zu dem Thema.
GrußformelHomepage
In diesem Forum bekomme nur selten eine Mailbenachrichtigung, weitere Antworten sind zufällig.
GrußformelHomepage
In diesem Forum bekomme nur selten eine Mailbenachrichtigung, weitere Antworten sind zufällig.
Anzeige
AW: Tabelle filtern nach Anzahl Stunden VBA
21.11.2021 10:45:04
Benita
Hallo Hajo,
Entschuldige bitte. Da hast du natürlich recht.
Ich habe mal eine Test-Arbeitsmappe erstellt. über nachstehenden Link abrufbar.
Ich hoffe, dass es klappt, denn das ganze Projekt ist ziemlich riesig und komplex :-)
https://file.myrzcloud.de/MyDevice/s/598/eca414e8-f768-4095-937a-276ab6d2a976
Beste Grüße, Benita
AW: Tabelle filtern nach Anzahl Stunden VBA
21.11.2021 10:49:34
Hajo_Zi
Hallo Benita,
Gut ich bin raus, ich dachte es geht um Excel, also eine Excel Datei.
Das habe ich wohl falsch gesehen.
Gruß Hajo
Anzeige
AW: Tabelle filtern nach Anzahl Stunden VBA
21.11.2021 11:12:25
Yal
Hallo Benita,
Da vor kurzem ein ähnlichen "Willkommensgruß" zu großen Unstimmigkeit geführt hat, bitte ich hier um Entschuldigung, dass einige möchtegern Beitragenden mit möchtegern belehrende Beiträge Neulinge belästigen. Jede Familie hat ein schwieriges Kind. Hajo hat eine Screenshot und Cloud-Dienst Allergie. Ich selber eine Allergie gegen Textbausteine und pauschale Beurteilung.
Desweiteren meinerseits ein Lob für dein ausführlich erklärte Beschreibung (und ja, der Screenshot passt gut dazu) und für alle Versuche, die du selber unternommen hast. Solche Willigen wird gern geholfen (zumindest von dem, worum es ums Helfen geht).
Ich bin leider nicht am Rechner und kann daher nicht in der Tiefe gehen, aber aus Erfahrung: Datum und Uhrzeit sind als solche Datentypen zu handeln, aber Dauer, insbesondere wenn sie summiert werden sollen, sollte man in Dezimal umwandeln. Aus 1:45 wird 1,75. Sonst versucht Excel aus mehr als 24 Std Tage zu machen, was wiederum als Datum interpretiert wird.
Viel Erfolg
VG
Yal
Anzeige
AW: Tabelle filtern nach Anzahl Stunden VBA
21.11.2021 16:52:02
Franzl
Hallo Excelianer,
diesen Thread habe ich auch getestet und bin eigentlich überrascht, wie einfach sowas geht.
Was mir aufgefallen ist, es ist zwar schön, dass ein Textfeld eingefügt wird mit Icon und den Namen der Datei, aber würde das auch machbar sein, dass sozusagen in der Zelle hinter dem Textfeld oder mit dem Textfeld der Link zur Datei eingefügt wird, damit man die Datei auch schnell wieder findet?
Wie schaut das aus, wenn dann der Link zur Datei zwar vorhanden ist, aber der Quellordner hat sich im Namen oder Verzeichnisort geändert? gäbe es da auch eine Lösung?
es grüßt
Franzl
Anzeige
Meine Anfrage gehört nicht hierhin ...
21.11.2021 19:47:10
Franzl
Meine Anfrage habe ich im falschen Thread geschrieben ...
SORRY

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige