Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA Zeile durchsuchen
#1
Hi Leute,

ich habe einen Kalender (siehe Anhang)

Nun will ich dort händisch mit einer "1" einen Zeitraum markieren. Als nächstes möchte ich ein Makro drüber laufen lassen, welches Beginn und Ende des Zeitraumes definiert. Habe in der Datei bereits ein Makro gebastelt. Allerdings komme ich nun nicht weiter, dass er quasi bis zum Ende des Kalenders fortführt (Spalte 185)

Vielleicht habt ihr ja auch noch Verbesserungsvorschläge für den Code


Gruß


Angehängte Dateien
.xlsm   Testdatei.xlsm (Größe: 16,92 KB / Downloads: 3)
Antworten Top
#2
Hallo,

um dein Ziel zu erreichen, musst du einfach nur eine zweite For-Next Schleife um deine bestehende Schleife setzen, mit der du die Zeilen durchläufst. Die letzte Zeile findest du so.

Als Verbesserungsvorschlag:
1. Mach auch irgendwas mit deinen Werten - aktuell liest du die nur aus
2. Du kannst auch einfach deine erste Schleife weiterlaufen lassen, musst dann halt die entsprechende If-Bedingung etwas ausführlicher gestalten.
Viele Grüße,
Matthias

-------------------------------------------------------------------------------------------

Man muß nicht alles wissen, man muß nur wissen, wie man die Lösung findet.
Antworten Top
#3
Hi Matthias,

vielen Dank für dein Feedback. Ja natürlich soll die Datumsangaben dann ausgewertet werden. In meiner nicht-anonymisierten Datei wird das auch so umgesetzt :). Sobald ein Zeitraum definiert wurde, wird er in eine andere Tabelle geschrieben.

Aber es ist schön zu hören, dass ich nicht ganz falsch liege.

Bislang habe ich als Idee gehabt, eine Sprungmarke zusetzen, dass er quasi wieder von vorne beginnt. Aber irgendwie bekomme ich das nicht hin. Wenn du schreibst, dass ich eine for-next-Schleife um die vier bestehenden basteln muss, wie muss die aussehen? Vielleicht schreibst du nicht direkt eine Formel sondern versuchst es in Worten zu erklären, damit ich das selber basteln kann :)


Danke
Antworten Top
#4
Hallo,

lass das folgende Makro mal in einer leeren Datei laufen - damit sollte es klar werden:

Code:
Sub Matthias()

   Zählen = 1

   For zeile = 1 To 2
       For spalte = 1 To 2
           Cells(zeile, spalte).Value = Zählen
           Zählen = Zählen + 1
       Next spalte
   Next zeile
   
End Sub
Viele Grüße,
Matthias

-------------------------------------------------------------------------------------------

Man muß nicht alles wissen, man muß nur wissen, wie man die Lösung findet.
Antworten Top
#5
Die Begriffe habe ich als Integer definiert, richtig? ;)
Antworten Top
#6
Hängt von ab, wie viele Zeilen/Spalten du maximal hast - ansonsten gibt es auch noch andere Datentypen.

Generell gilt: So groß wie nötig, so klein wie möglich.
Viele Grüße,
Matthias

-------------------------------------------------------------------------------------------

Man muß nicht alles wissen, man muß nur wissen, wie man die Lösung findet.
Antworten Top


Gehe zu:


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