Suchen im Bereich e. Tabelle anhand e. Teilinhalts d. Zellen u. Ausgabe als csv-Datei
#41
Hallo Thorsten,
nun habe ich deine Erläuterung verstanden und konnte diese auch noch nutzbringend anwenden, weil ich eine weitere Spalte "nach vorn" gezogen habe.
Alles läuft - bei mir zu Hause - fehlerlos. Herzlichen Dank nochmals für die Begleitung und Hilfe bis hier her.
Und jetzt kommt ´ne Info, die ich dir im ersten Anflug meiner Enttäuschung nicht mitteilen woltte. Ich denke aber nun, der Respekt dir gegenüber fordert eine andere Entscheidung.
Zur Sache:
Ich habe die Lösung gestern dem Kollegen vorgestellt, dem ich sie versprochen hatte. Er war sehr zufrieden, trotz einer Fehlermeldung (Anhang).
Die Situation ist also so: Die Suchen mittels Makro funktionieren; es wird zu jedem Kriterium und zu jeder Kombination eine separate Datei generiert, auf deren Blatt aber auch auch die Fehlermeldung zu sehen ist.
Ich habe das Ganze so verstanden, dass auf den PC des Netzes der Verwaltung die App "Ghostwriter" fehlt. Ich konnte das aber nicht überprüfen, weil die Rechner so konfiguriert sind, dass man Systemsteuerung und Gerätemanager zwar öffnen kann, aber alles ausgeblendet wurde.
Es besteht auch keine Hoffnung auf Änderung, weil Ausnahmen bei der Basi-Konfiguration der PCs nicht gemacht werden.
Mein Kollege denkt, dass er die Fehlermeldung einfach löscht durch Klick auf "Beenden" und danach der Datei einen passenden Namen beim Speichern gibt.
Wie findest du das? 
Ich finde es irgendwie doof, möchte dich aber dennoch nicht um weitere Hilfe bitten, weil alles was danach entsteht nicht so komfortabel ist wie der aktuelle Stand.

Im Moment bin ich dabei, eine kurze Anleitung zu schreiben, Dabei probierte ich einigen und es fiel mir etwas unverständliches auf, weil die drei Parameter für die Suche arbeiten wie eine verknüpfte UND-Verbindung. Es gibt ein Ergebnis, wenn Parameter A und Parameter B gemeinsam wahr sind. Es gilt aber auch die Umkehrung: Ein Ergebnis sollte entstehen, wenn Parameter B und Parameter A gemeinsam zutreffen.
Dem ist aber nicht nicht so.
Bei der Kombination Param. A=z und Param. B=mitg, ergeben sich 176 Treffen || bei der Kombination A=mitg und B=z gibt es keinen Treffer
Bei der Kombination Param. A=z und Param. B=vors, ergeben sich 23 Treffen || bei der Kombination A=vors und B=z gibt es keinen Treffer

Vielleicht habe ich die Verknüpfung auch nicht richtig verstanden, dann solltest du mich bitte schlau machen, damit ich das in der Anleitung korrekt beschreibe.
Soweit erst einmal; Herzliche Grüße, Lothar


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#42
Hi Lothar,

1) Er war sehr zufrieden, trotz einer Fehlermeldung (Anhang). 

Das ärgert mich nun wieder...
Wieso?

Ob ich helfen könnte, weiß ich nich, aber wenn überhaupt, dann reicht es nich - nur ne Fehlermeldung zu zeigen! - wieso zeigst du nich auch die Codezeile, in der der Fehler passiert????



2) Woher kommt nun auf einmal "Ghostwriter" ???

Soweit ich mich erinner, hast du diese App in all deinen Beiträgen nicht einmal erwähnt - wenn ich mich irre, verrat du mir bitte, in welchem Beitrag genau (Datum, Uhrzeit) du uns von der App Ghostwriter geschrieben hattest.
Wenn auf allen Verwaltungs-PC die App "Ghostwriter" - nicht - installiert ist, dann wird es wohl auch auf all diesen PC zu dem von dir genannten Fehler kommen (können?).

"... Wie findest du das? 
Ich finde es irgendwie doof, möchte dich aber dennoch nicht um weitere Hilfe bitten..."

Tja, ehrlich? 
Ich find es auch doof...und zwar, wie schon in 1) beschrieben, ich gar nich helfen könnte, wenn ich denn wollen würde....weil ich schlicht und einfach nich weiß, wo denn der Fehler auftritt.

Was ich aber noch nicht verstehe:

a) Du schreibst "... auf dem PC des Netzes der Verwaltung die App "Ghostwriter" fehlt ..."
b) Auf meinem PC ist Ghostwriter auch nicht installiert...aber auf meinem PC gibt es nach CSV-Erstellung keinen Fehler, wieso aber auf dem Verwaltungs-PC?

Nun denn, hier könnt ich wohl vielleicht nur helfen, wenn ich denn direkt vor dem Verwalt.-PC sitzen würde....


3) "... Es gibt ein Ergebnis, wenn Parameter A und Parameter B gemeinsam wahr sind. Es gilt aber auch die Umkehrung: Ein Ergebnis sollte entstehen, wenn Parameter B und Parameter A gemeinsam zutreffen. ..."

Ja, mein Fehler.
Im Code gibt es diesen Codeteil:

Code:
 If larstrParam(liParIdx) <> "" Then
  larChkParam(liParIdx) = "noEmpty"
      For lloCBas2 = 13 To 36

Und hier hatte ich übersehen, den Code so anzupassen, dass auch lloCBas2 die Suche in den richtigen Spalten durchführt.
Die korrigierte Zeile muss also (auch) so sein:

Code:
For lloCBas2 = 6 To 29


ABER!
Das ist leider nicht der einzige Grund, wieso unterschiedliche Ergebnisse bei den selben Kürzeln, in unterschiedlicher Reihenfolge gefunden werden.

Ich musste einen Großteil des Codes komplett neu programmieren (<-- und das ist der Grund, wieso ich mich erst jetzt melde)
Denn das Ganze hat etwas gedauert, bis ich endlich fertig war.
Aber nun gut...a) nun funktioniert es...b) "langes Warten" ist halt manchmal "euer Preis" dafür, eine gratis-Lösung zu erhalten Wink

Also...

Bei der Kombination Param. A=z und Param. B=mitg, ergeben sich nun 258 Treffer || bei der Kombination A=mitg und B=z gibt es nun AUCH 258 Treffer
Bei der Kombination Param. A=z und Param. B=vors, ergeben sich 38 Treffer || bei der Kombination A=vors und B=z gibt es nun AUCH 38 Treffer

Wunder dich nich, dass nun wieder andere Ergebnisse als bei deinen Tests rauskommen - der Grund dafür ist: Weil ja diese eine Codezeile "For lloCBas2..." korrigiert werden musste.

Nix desto trotz: führe auch du erneut viele Tests durch

Hilft denn meine Datei nun?

Ciao
Thorsten


Angehängte Dateien
.xlsm   Daten-anonym_sortieren+filtern_2024-08-21_mit-Makro.xlsm (Größe: 952,87 KB / Downloads: 3)
[-] Folgende(r) 1 Nutzer sagt Danke an Oberschlumpf für diesen Beitrag:
  • Lothar2202
Antworten Top
#43
Hallo Thorsten,
herzlichen Dank für deine Hilfe, den sicherlich großen Zeitaufwand deinerseits und auch deine Kritik an meinen Informationen. Leider habe ich erst heute Abend Zeit für eine längere Antwort.
Ich melde mich also spätestens morgen; wünsche dir einen erfreulichen Tag und verbleibe mit herzlichen Grüßen, Lothar
Antworten Top
#44
Hallo Thorsten,
zum Anfang lass mich erst mal zu deiner Kritik an meinen Informationen schreiben: Ja, in bewährter Weise konntest du helfen. Nochmals Danke dafür. Nun werden alle Funktionen in allen Ausschüssen gefunden.
Auch deine letzte Hilfe funktioniert bestens, ich habe mehrere Kombinationen Hin-und-Her getestet, die Anzahl der Treffer war, soweit überhaupt welche zu erwarten waren, stets gleich.
Damit wären wir eigentlich, bis auf den verschmerzbaren Mini-Fehler beim Lauf auf der Arbeit, Dank deiner Hilfe und der von Ralf, gut und erfolgreich fertig.
Und damit bin ich beim "Eigentlich": 
Ich habe heut mit meinem Kollegen, der die Sache übernehmen und pflegen wird, telefoniert.
Er erzählte mir, was für eine Auskunft gestern von einer Fraktion an das Büro der BVV gestellt wurde, und das trotz Sommerpause. Es ging wieder einmal um das leidige Thema, dass zunehmend mehr Volksvertreter in immer mehr Ausschüsse drängen. Da das natürlich nicht konform ist mir einem der Grundgedanken einer repräsentativen Legislati, gibt es immer wieder von unterschiedlichen Interessenträgern unterschiedliche Anfragen.
In diesem Zusammenhang ist die Suche mittels Blatt-C enorm hilfreich.
Als ich mit dem Projekt anfing, hatte ich vom Nutzen dieser (deiner) Suche eine vage Ahnung, dachte aber nicht an eine Information, die den Personen bisher nicht zugeordnet wird. Das ist der Träger ihres Mandats, also deren Partei.
Es wäre also sehr entgegenkommend von dir, wenn das Merkmal "Träger" zusätzlich ausgegeben wird. Im Büroalltag schreiben wir die Trägerschaft an die vierte Stelle, fast wie ein Persönlichkeitsmerkmal Undecided .
Ich habe in Vorbereitung deiner Hilfe auf Blatt-D (Anhang) die entsprechende Spalte (F) schon eingefügt und im Code das Abfragefeld von Spalten 6 bis 29 angepasst auf Spalten 7 (G) bis 30 (AD). Mehr konnte ich leider nicht tun.

Nun noch zu der Bug-Meldung:
Auf "Ghostscript" bin ich gekommen, weil die entsprechende Notiz an der Meldung über den Laufzeitfehler hing (Anhang). Und es passte perfekt, damit ich mir die Welt erklären konnte: Das Ergebnis der Suche wird als Tabelle in Excel angezeigt, aber nicht als Datei gespeichert wie auf dem heimischen PC. Also musste es etwas mit dem Generieren/Ausgeben des Suchergebnisses zu tun haben. ...... Ist doch easy gedacht, oder? Dodgy
Inzwischen habe ich "Ghostscript" auf der Arbeit auf dem PC, der Bug ist aber der selbe geblieben (Anhang).
Hinsichtlich des Fehlers bitte ich dich, keine Unmengen an Zeit in dessen Beseitigung zu stecken. Meine Kollegen können mit dem Fehler leben, denn sie müssen die Fehlermeldung simpel Wegklicken und die bereits angezeigte Datei lediglich speichern. Ihr Kommentar dazu: "Das schaffen wir."

Damit bin ich wieder mal am Schluss angekommen. 
Ich freue mich auf deine Hilfe, auch auf die Info, an welchen Stellen du den Code für die Ausgabe der Trägerschaft ergänzen musstest, und verbleibe mit herzlichen Grüßen aus dem heute stark abgekühlten Berlin


Angehängte Dateien Thumbnail(s)
       

.xlsm   Daten_anonym_suchen_mit_Makro_2024-08-22.xlsm (Größe: 986,56 KB / Downloads: 3)
Antworten Top
#45
Moin,

eindeutiger können Fehlermeldungen eigentlich nicht sein. Die .Add2-Methode des SortFields-Objekts gibt's nur in aktuellen Versionen und wird nur benötigt, um die Subtypen Geography oder Stocks zu sortieren. im konkreten Fall reicht also auch die normale .Add- Methode.

Viele Grüße
derHöpp

BTW wäre es nicht viel einfacher eine der zahlreichen Gremieninformationssysteme zu verwenden? Sessionnet hat beispielsweise auch ein Modul zur Sitzungsgeld Berechnung. Geschätzt ist das wirtschaftlicher, als Verwaltungsfachleute auf wacklige, anschaffungskostenfreie, aber nicht kostenlose gestrickte Auswertungen loszulassen.
Selbst, wenn das nicht in Frage kommt, sollte Grundlage aller Berechnungen eine ordentliche relationale Datenstruktur sein. Es ist der falsche Weg, Auswertungen über Textverarbeitung von Abkürzungen zu basteln. Eigentlich wichtig ist doch die Häufigkeit der Teilnahme an Sitzungen von Gremien in einer Funktion und der zugehörige Entschädigungsfaktor (Damit ist das Datenmodell übrigens auch umrissen). Wo kommen die vorhandenen Daten denn her?
Antworten Top
#46
Hi Alle,

ich bin hier "nur der Programmierer", kenne mich aber in kaufmännischen Tätigkeiten nicht aus --> will sagen, hab in dem Bereich keine Ausbildung, etc.
Aber ich bin neugierig auf Lothars Antwort zu den Hinweisen von derHoepp.
Bis was kommt, mach ich halt weiter mit den gewünschten Korrekturen.

Ciao
Thorsten
Antworten Top
#47
Hi Lothar,

so, bin fertig mit der Anpassung an den neuen Wunsch...

vllt-Lösung für Fehler-Nr 438:
ich hab im Code diese Codestelle...
Code:
.Sort.SortFields.Add2
...geändert in...
Code:
.Sort.SortFields.Add

Wenn es wirklich wahr ist, dass in eurer Firma noch ältere XL-Versionen als 2016 genutzt werden, dann gibt es ab jetzt den Fehler vllt nicht mehr.

Dein neuer Wunsch wegen Hinzufügen von Träger ist auch erledigt.
Alle dafür notwendigen Änderungen enden mit dem Kommentar, der mit 'HIER Änderung wegen Träger: beginnt.

Und dann hab ich, ohne Aufforderung von dir, noch eine weitere Funktion eingebaut:
...siehst du sofort, wenn du das Blatt "Start" anschaust...

Deine etwas umständliche Art, Blätter ein- und auszublenden, war mir schon länger "ein Dorn im Auge"....das is nich böse gemeint, denn du wusstest es bis jetzt ja nicht besser.
Wie du siehst, hab ich in Spalte Q - fast - alle verfügbaren Blattnamen eingetragen, und in den Spalten R + S kannst du (und Kollegen!) nun sehr viel einfacher steuern, was das Ein- und Auszublenden von Blättern betrifft.
In Spalte Q - nicht - eingetragen ist das Blatt "Start" selbst - es macht ja keinen Sinn, auch "Start" auszublenden...dann is nix mehr mit Navigation usw.
Gefällt es? Wenn nein, gib bescheid, dann lösch ich all das wieder.

Und ich muss noch einen Fehler zugeben:
Ich schrieb ja, dass auf meinem PC Ghostwriter - nicht - installiert ist.
Heut hab ich mal genauer gesucht...und Ghostwriter gefunden!
Nun denn, auch wenn ich denke, dass der Fehler damit nix zu tun hat, bin ich trotzdem ein Freund davon, korrekt zu berichten.

Konnte ich helfen?

Ciao
Thorsten


Angehängte Dateien
.xlsm   Daten_anonym_suchen_mit_Makro_2024-08-23.xlsm (Größe: 995,67 KB / Downloads: 2)
[-] Folgende(r) 1 Nutzer sagt Danke an Oberschlumpf für diesen Beitrag:
  • Lothar2202
Antworten Top
#48
Hallo Thorsten, und Hallo an den "Hoepp",
doch zuerst an Thorsten, dem ich erst mal und immer wieder gern, Danke sage möchte für die letzte und erneut hilfreiche Bearbeitung sowie Erweiterung um die Ausblende-Tabelle.
Alles läuft perfekt; es ist mir sogar gelungen, in der vom Blatt-C generierten Datei den Träger des Mandats an die im Büro übliche Stelle hinter dem Vornamen zu setzen und die Sortierung der Tabelle dahingehend zu ändern, dass die Nachnamen das prägende Sortierkriterium sind. Den Gedanken meiner Kollegen, die Funktion dazu zu nutzen, fand ich noch nie überzeugend. Letztendlich muss ohnehin in Abhängigkeit von der Fragestellung mit den Excel-Bordmitteln sortiert werden.
Die Aus- und Einblende-Tabelle finde ich richtig gut. Danke für deine Erweiterung. Ich habe sie auf dem Blatt "Start" belassen und das Umfeld angepasst (Anhang).
Und was die - ich nutze mal ´nen medizinischen Begriff - Unverträglichkeit der gesamten Lösung mit dem DV-technischen Status des Arbeitsplatzes betrifft, kann ich noch nichts sagen. Ich war heute nicht auf Arbeit, du weißt doch, dass ich seit mehr als einem Jahrzehnt in Rente bin. Da gönne ich mir schon zwei freie Tage unter der Woche. Am kommenden Montag weiß ich mehr. Ich habe keine Ahnung, auf was für einem Stand sich die PCs im Büro befinden.

Und damit habe ich mir unbeabsichtigt, aber nicht schlecht, einen guten Übergang zu "Hoepp" geschaffen,
dem ich generell zustimmen kann.
Und bei Generell liegt auch das Problem: Trotz genereller Erkenntnis und bestem Wollen wirkt eines mit extremer Effektivität gegen das von Dir ins Auge genommene.
Es ist die legislative Kraft des Faktischen. Im konkreten Fall die objektiv vorhandene und auch mit argumentativer Absicht gepflegte Bewertung: Es ist kein Geld in der Verwaltung für ihre eigenen Dinge.
Ich hatte beim Lesen deines Beitrags sowieso das Gefühl, du kennst dich in Sachen Verwaltung aus. Insofern kann ich mir alles Weitere zu deinen Zweifeln sparen, weil du die Argumente aus eigenem Blick ins Innere des Motors kennst.
Oder mit anderen Worten, mit der Datei ist im Moment das Erreichbare fast erreicht, auch in der HInsicht, diese "mitarbeitersicher" zu machen.

Lieber Thorsten, lieber "Hoepp", ich wünsche euch ein entspanntes Wochenende und verbleibe mit herzlichen Grüßen, Lothar


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#49
Hallo Thorsten,
es gibt aus meinem heutigen Arbeitstag heraus drei Nachrichten folgenden Charakters: unglaublich, oberprima, ratlos.

Zu "unglaublich": Ja, dem Anschein nach haben wir noch ältere XL-Versionen als 2016 auf den PCs. Wir sind aber keine Firma, wie du schriebst, sondern ein Amt..............
Zu "oberprima": Auf Anhieb funktionierte die Dateiausgabe von Blatt-C her fehlerfrei. Deshalb nochmals herzlichen Dank an dich für die Realisierung und an den Hoepp für den eigentlich außerhalb des Erwartbaren (älter als 2016) liegenden Ansatz.

Und nun zu "ratlos":
Weil mein Kollege, der aus meiner Sicht vorrangig mit der Lösung arbeiten wird, heute nicht auf Arbeit war, zeigte ich das aus meiner Sicht nun fertige "Werk" einer Kollegin, die ebenfalls Anfragen bearbeitet und mit großer Wahrscheinlichkeit die Datei anwenden - nicht pflegen - wird.
Sie hatte auch gleich eine konkrete Anfrage zu den Bürgerdeputierten auf dem Tisch, zog sich unter meiner Anleitung eine Datei und erklärte, dass sie mittels der Autofilter- und Sortierfunktionen von Excel klar kommt und die Antwort auf die Anfrage verfassen kann. ....... Nach ca. 20 Minuten kam sie zu mir und sagte, dass das Ergebnis der Suche mittels Blatt-C nicht korrekt ist. Sie könne machen was sie will, es würde immer eine Person fehlen.
Ich war das erste Mal ratlos wegen eines vermeintlichen Fehlers.
Dann ließ ich mir von ihr jeden Arbeitsschritt ab der Übergabe des Suchergebnisses an sie, zeigen. Mir war sofort klar, was sie falsch macht:
Sie setzt den Autofilter in die erste Zeile der ausgegebenen Datei. Das führt natürlich dazu, dass diese Person "untergeht".
Meinen Hinweis, dass sie am Anfang eine Leerzeile einsetzen muss und erst danach den Autofilter, fand sie nachvollziehbar, aber sie ist sich nicht sicher, ob sie jedes Mal daran denken wird.
Nun war ich zum zweiten Mal ratlos und bin es immer noch, weil du - zart formuliert - kein Freund nachträglicher Änderungen am "Pflichtenheft" bist. Ich ärgere mich auch über mich selbst, weil ich nicht "so dumm" gedacht hatte, wie es durchaus möglich ist.
Es geht also schlicht darum, in jedem Datenexport eine erste Zeile - für Autofilter - auszugeben mit Überschriften für die Spalten: Nachname | Titel | Vorname | Träger | Ausschuss | Status

Wenn du noch Zeit und Lust für diese Verfeinerung hast, und das vor allem kein großer Aufwand für dich ist, würde ich mich natürlich sehr freuen. Allerdings habe ich der Kollegin auch sagen müssen, dass sie diese "Kleinigkeit" für die Anwendung von Excel auch dazulernen könne.
Damit bin ich wieder mal am Schluss mit meinem Bericht und zugleich ein wenig verstimmt, dass noch etwas Dummes, in des Wortes wahrer Bedeutung, offen geblieben ist.
Herzliche Grüße, Lothar

Ich hänge den aktuellen Stand mit anonymen Daten hier ran.


Angehängte Dateien
.xlsm   Daten_anonym_Filtern_mit_Makro_2024-08-23.xlsm (Größe: 992,77 KB / Downloads: 4)
Antworten Top
#50
Hi Lothar,

echt jetzt?

an deine Kollegin gerichtet: nee..besser ich bleib still!

nun denn...
änder diesen Code...
Code:
    Workbooks.Add
    lloRNext = 1
...um in...
Code:
    Workbooks.Add
    Range("A1").Value = "Nachname"
    Range("B1").Value = "Titel"
    Range("C1").Value = "Vorname"
    Range("D1").Value = "Träger"
    Range("E1").Value = "Ausschuss"
    Range("F1").Value = "Status"
    lloRNext = 2
DAS war Teil 1.

Für Teil 2 änder diesen Code...
Code:
            .Sort.SortFields.Add Key:=Range("A1:A" & .Cells(.Rows.Count, 5).End(xlUp).Row), _
            SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
            fcSort(kuerzel), _
            DataOption:=xlSortNormal
                With ActiveSheet.Sort
                    .SetRange Range("A1:E" & Cells(Rows.Count, 1).End(xlUp).Row)

...um in...
Code:
            .Sort.SortFields.Add Key:=Range("A2:A" & .Cells(.Rows.Count, 5).End(xlUp).Row), _
            SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
            fcSort(kuerzel), _
            DataOption:=xlSortNormal
                With ActiveSheet.Sort
                    .SetRange Range("A2:E" & Cells(Rows.Count, 1).End(xlUp).Row)
Das war's.

Bei mir wird a) in jeder CSV die Überschriftenzeile in Zeile 1 eingetragen und b) dann, nach Eintrag der Datenzeilen, ab Zeile 2 sortiert.

Und bei dir?!


Aber ich hab doch noch n paar Fragen/Hinweise:

Wieso soll der Export eigtl immer in CSV-Dateien gespeichert werden?
Ich hatte meist gedacht, ihr benötigt CSV's für die Weiterverarbeitung in anderen Programmen, die Excel-Dateien nicht öffnen können.
Du weißt, dass ne CSV-Datei einfach nur eine TXT-Datei ist, oder? Öffne doch mal eine von (d)einen CSV's mit nem Texteditor.
Dass ne CSV-Datei, in Excel geöffnet, "aussieht", wie ne "echte" Excel-Datei, liegt nur daran, weil Excel ja CSV-Dateien "kennt" und die Daten dann gleich korrekt anordnet/anzeigt.

Und was wird eigtl sein, wenn du mal nich mehr in der Firma! arbeitest? (is doch eigtl sch...egal, ob Firma oder Amt, oder?! Hab deinen Hinweis auf's Amt nich verstanden)
Die Kollegin "will nich" mitdenken, der Kollege ist ja vllt nich nur heute nich da.
Wer von den Anderen kennt sich eigentlich in VBA aus??? Denn: Bitte was ist, wenn die ganzen Daten in einzelnen Blättern mal in andere Zeilen/Spalten verschoben werden?

Ciao
Thorsten
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste