Thema Datum  Von Nutzer Rating
Antwort
18.03.2021 14:08:43 Nadine
Solved
Blau Bereich absuchen, Zelle m. Inhalt ausschneiden+in nächste leere Zelle rechts einfügen
18.03.2021 19:31:33 Mase
NotSolved
19.03.2021 12:44:14 Nadine
Solved
19.03.2021 12:58:25 Mase
NotSolved

Ansicht des Beitrags:
Von:
Mase
Datum:
18.03.2021 19:31:33
Views:
224
Rating: Antwort:
  Ja
Thema:
Bereich absuchen, Zelle m. Inhalt ausschneiden+in nächste leere Zelle rechts einfügen

Hi Nadine,

bringen wir mal Ordnung in Dein Problem:

Deine Do-While -Schleife ersetzen wir durch eine For-Each-Schleife. 

Sinngemäß steht da: "Für jede Zelle im Bereich M3 bis M10"

    Dim c As Excel.Range
    
    For Each c In Range("M3:M10")
        '*** // TODO

    Next c

 

Dann lösen wir das Problem mit der Spalte. Da die Spaltenermitlung ausserhalb Deiner Schleife steht, bleibt die Variable last (logischerweise) stets gleich.

Die Objektvariable "c" in der For-Each-Schleife ist inerhalb der Schleife eine Zelle je Durchlauf vom Bereich M3 bis M10.

Im ersten Durchlauf erhalten wir also eine Referenz auf Zelle M3, dann M4, M5 usw usf.

Da ich nun weiss, in welcher Zeile ich mich befinde, springe ich nurnoch in die letzte Spalte dieser Zeile und gehe so lange nach links, bis ich auf Widerstand stoße - also überfliege alle Leerezellen, bis eine mit Wert (Achtung: auch ein einzelnes Leerzeichen) oder Formel vorkommt.

    Dim c As Excel.Range
    
    For Each c In Range("M3:M10")
        '*** // TODO
        Cells(c.Row, Cells.Columns.Count).End(xlToLeft).Select
    Next c

An dieser Stelle mal den Code testen. 

Schreibe Werte in M3 bis M10.

Dann in N3, O4, P5, Q6 usw jeweils ein x.

Dann gehst den gezeigten Code mal in Einzelschritten, via F8, durch.


 

Sag bescheid wenn Du soweit bist.

 


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
18.03.2021 14:08:43 Nadine
Solved
Blau Bereich absuchen, Zelle m. Inhalt ausschneiden+in nächste leere Zelle rechts einfügen
18.03.2021 19:31:33 Mase
NotSolved
19.03.2021 12:44:14 Nadine
Solved
19.03.2021 12:58:25 Mase
NotSolved