Microsoft Excel

Herbers Excel/VBA-Archiv

Problem beim kopieren | Herbers Excel-Forum


Betrifft: Problem beim kopieren von: Uppe
Geschrieben am: 04.02.2010 14:20:42

Hallo,

mit folgendem Code bestimme ich die letzte Zeile, kopiere einen Textbaustein dahin und will dann die Höhe der letzte Zeile dieses Textbausteins verändern.

Sub Impressum()
  intLastRow = Worksheets("Newsletter").Cells(Rows.Count, 2).End(xlUp).Row + 2
  Worksheets("Textbausteine").Range("Text_Impressum").Copy Worksheets("Newsletter").Range("B" &  _
intLastRow)
  Worksheets("Newsletter").Rows(intLastRow + Worksheets("Textbausteine").Range("Text_Impressum") _
.Rows.Count - 1).RowHeight = 3
End Sub
Leider funktioniert das Kopieren manchmal nicht. Dann bekomme ich eine Fehlemeldung, dass die RowHeight des Objektes nicht verändert werden kann.
Wenn ich dann im Code nochmal eine Zeile zurück gehe (zum Kopieren), klappt es.

Ich habe versucht dies über eine Schleife abzufangen. Text_Impressum hat einen grauen Hintergrund. Also habe ich abgefragt, ob die letzte Zeile grau ist und wenn nicht sollte der Kopiervorgang wiederholt werden. Leider wurde es eine Endlosschleife.

Komisch ist, dass dies nur manchmal passiert. In 3/4 der Fälle funktioniert es.

Kann mir jemand einen Tipp geben, woran das liegen kann?

Gruß Uppe

  

Betrifft: AW: Problem beim kopieren von: Luschi
Geschrieben am: 04.02.2010 14:37:45

Hallo Uppe,

diese Form der Bereichsbestimmung:
Worksheets("Textbausteine").Range("Text_Impressum")
führt auch bei mir manchmal zum Fehler. Deshalb benutze ich nur noch diese Form:
ThisWorkBook.Names("Text_Impressum").ReferstoRange
bei einem globalen Namen in der Arbeitsmappe und
ThisWorkBook.Names("Newsletter!Text_Impressum").ReferstoRange
bei einem lokalen Namen in der entsprechenden Tabelle 'Newsletter'

Gruß von Luschi
aus klein-Paris


  

Betrifft: Danke! von: Uppe
Geschrieben am: 04.02.2010 14:52:01

Hallo Luschi,

vielen Dank! Nach den ersten Tests scheint es zu funktionieren!

Gruß Uppe


Beiträge aus den Excel-Beispielen zum Thema "Problem beim kopieren"