Excel Sortierungs Problem

  • Excel

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Excel Sortierungs Problem

    Folgendes Problem

    Ich arbeite mit mehrern Tabellenblätter in einer Excel
    Jedes Blatt ist einen User zugeteilt. Er kann Daten Reinschreiben in gewissen Spalten reinschreiben, diese Daten werden dann von mir in einer Übersicht übernommen.
    Hier habe ich für jeden Benutzer einen Bereich mit einer Wenn Funktion festgelegt. 0-500 User1, 500-1000 User 2 usw.
    Jetzt bekommt der User aber auch Daten aus dieser Übersicht wieder zurückgespielt.

    Soweit funktioniert das alles.
    Ich blende beim User dann die Leeren Spalten aus und bekomm so die Daten richtig aufgelistet.
    Zeilennummer zb A1 Stimmt mit der Formel in Feld A1 zusammen. Bei Zeile A500 wird auch die Zeile A 500 angezeigt.

    Und jetzt das Problem:
    Sobald ich dann filtern will wirf er mir alles durcheinander. Er schreibt dann die Daten A500 in A1 usw.
    Kann man den Inhalt von Zeile 1 Irgendwie mit den Zelleninhalt fixieren ?

    Vielen Dank

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    @Farmer6 Ohne das jetzt vollständig durchdrungen zu haben:
    • User1: 0-499 oder 1-500
      User2: 500-999 oder 501-1000
      usw., Du darfst keine Spalte mehreren Usern zuordnen.
    • Offensichtlich arbeitest Du mit relativen Indizes. Diesem relativen user-unabhängigen Index musst Du noch den Startindex des aktuellen Users (0, 500, 1000, ...) hinzuaddieren, hier musst Du aufpassen, ob das bei 0 oder bei 1 anfängt.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    User 1 hat 3-502
    User 2 hat 503-1002
    User 3 hat 1003-1502
    User 4 hat 1503-2002
    usw.

    Die Auswertung sieht dann wenn die leeren Zeilen ausgeblendet sind so aus:
    2016-09-15
    09_44_27-Auftragsdatenbank Test - Excel.png


    ​Wenn ich jetzt sortiere sieht das dann so aus:
    2016-09-15
    09_46_30-Auftragsdatenbank Test - Excel sortiert.png


    Ich will aber das nach dem sortieren die Richtige Zeilennummer wie nach dem Ausblenden mitgeschoben wird.


    Bilder
    • 2016-09-15 09_44_27-Auftragsdatenbank Test - Excel.png

      6,38 kB, 230×338, 123 mal angesehen
    • 2016-09-15 09_46_30-Auftragsdatenbank Test - Excel sortiert.png

      6,18 kB, 233×325, 121 mal angesehen
    @Farmer6 Diese Information gehört in den Eröffnungspost.
    Dann solltest Du diese Spalte mit sortieren. Teste dies zunächst in Excel selbst.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Farmer6 schrieb:

    Kann man den Inhalt von Zeile 1 Irgendwie mit den Zelleninhalt fixieren
    Da du nicht sagst, wie du sortierst, ist das schwer zu beantworten.
    Aber die Excel Sort-Methode hat einen Parameter HasHeaders, die du auf True setzen kannst.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Habe das Thema anders gelöst.
    Ich sortiere nicht mehr sondern ich Filtere nach gewissen Zeichen.
    Das Funktioniert für meine Anwendung.

    Allerdings habe ich noch ein Anderes Problem.

    Wenn ich ein gewisses Makro Starte Macht er zwar die Filterung aber das Bild hängt.
    Scrollt man dann einmal nach unten und wieder nach oben passt alles.

    Wie kann ich das in den Griff bekommen?

    ZB. Mein Makro zum Filtern:

    Sub Sort_MTR()
    '
    ' Sort_MTR
    '

    '
    With ActiveSheet
    Rows("2:2").Select
    Selection.AutoFilter
    Selection.AutoFilter Field:=3, Criteria1:=Array( _
    " M1*"), Operator:=xlFilterValues
    End With
    With ActiveSheet.AutoFilter.Sort
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
    Application.ScreenUpdating = True
    End With



    End Sub

    ?(

    Farmer6 schrieb:

    aber das Bild hängt.
    Was meinst Du?
    Ein DataGridView?
    Machst Du DataGridView1.Update().
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @petaod Jou, oben steht VB6, ich hab einen "Elementarcode" vorgeschlagen, wobei ich nicht weiß, ob sowas unter VB6 geht.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!