Thema Datum  Von Nutzer Rating
Antwort
11.07.2023 15:17:33 Gast18414
NotSolved
Blau Tabellen vergleichen und gegenüberstellen
11.07.2023 19:18:33 Gast79870
Solved

Ansicht des Beitrags:
Von:
Gast79870
Datum:
11.07.2023 19:18:33
Views:
253
Rating: Antwort:
 Nein
Thema:
Tabellen vergleichen und gegenüberstellen

HI Gast18414.

Als erstes würde man da eine Funktion benötigen, der beide Werte miteinander vergleichen kann und eine Aussage darüber trifft, ob der linke Wert gleich (0), kleiner (-1) oder größer (1) dem rechten Wert ist.

Public Function ValueCompare(LeftValue As String, RightValue As String) As Long
  ' Logic for LeftValue -> RightValue must return equal (0), lesserThan (-1) or greaterThan (1)
End Sub

Die Logik kann beliebig implementiert werden. In deinem Fall wäre es zum Beispiel notwendig, zuerst den vorderen nicht-numerischen Teil zu ermitteln und mittels VBA-Standard StrComp-Funktion [microsoft.com] zu vergleichen. Wenn der vordere Teil gleich ist, vergleicht man den hinteren Teil, also den numerischen, und dieser liefert das Ergebnis. Ist der vordere Teil ungleich, dann ist das Ergebnis der StrComp-Funktion bereits der Ergebnis der Funktion und du musst den hinteren Teil nicht vergleichen.


Damit kann man dann folgendes tun:

  1. starte in der ersten Zeile in der Tabelle
  2. vergleiche beide Werte der Zeile miteinander -> ValueCompare( <LeftValue>, <RightValue> )
    • wenn -1: schiebe die Zelle von RightValue eins nach unten (mittels Range.Insert() Methode)
    • wenn 1: schiebe die Zelle vom LeftValue eins nach unten (mittels Range.Insert() Methode)
    • sonst: tue nichts
  3. gehe in die nächste Zeile (nach unten)
  4. wiederhole ab Punkt 2. - soalnge bis keine Zeile mehr übrig ist

 => Das Ergebnis dieses Algorithmus sollte die zweite Tabelle sein. 

 

Grüße

PS: Als Schleifentyp wird man eine Do...Loop-Anweisung [microsoft.com] benötigen.

PPS: https://www.vba-tutorial.de/

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
11.07.2023 15:17:33 Gast18414
NotSolved
Blau Tabellen vergleichen und gegenüberstellen
11.07.2023 19:18:33 Gast79870
Solved