Ako koristiš VBA često ćeš biti u prilici da se pitaš zašto se neki program ne izvršava ili dalje neočekivane rezultate. Koristeći alat za debagovanje u VB Editoru laše ćeš pronaći greške.
Ideja je da određenu liniju koda koju znaš da se izvšrava (pre otkaza) označiš kao Break point. Tokom izvršavanja program će da se zaustavi pre te tačke.
Onda možeš da ispitaš sadržaj promenljivih, ćelija ... u prozoru Immediate. Jednostavno otkucaš u ovom prozoru ?brojac, gde je brojac varijabla čiju vrednost želiš da proveriš.
Nakon Break Pointa program možeš da izvršavaš linuju po liniju (F8), uz proveru određenih varijabli, sadržaja ćelija itd.
Detaljnije
http://www.cpearson.com/excel/Debug.htm.
U tvom slučaju ako pogledaš u debug režimu, kao što sam opisao verovatno ćeš naći da se petlja izvršava samo jednom. Onda pogledaj u Immediate Window
?Workbooks(1).Name
i verovatno ćeš dobiti odgovor - makro gleda pogrešnu radnu svesku. Umesto Workbooks(1) stavi ThisWorkbook. Ako i nije u tome problem verujem da ćeš koristeći debuger naći rešenje.
Nije to loše Rembrante, samo što ne bi dodao još malo boje?