hi, kann man Zellen von Tabelle1 zu Tabelle2 per VBA kopieren, ohne dass das Tabellenblatt1 angezeigt wird?
Ich befinde mich in Tabelle2 und führe folgendes Makro aus:
Code:
Worksheets("Tabelle1").Range("A1:B10").Copy
Worksheets("Tabelle2").Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Das funktioniert zwar, jedoch wird während des Kopiervorganges Tabellenblatt 1 kurz eingeblendet. Kann ich das verhindern?
lieben Dank!
Hallo Julia
Code:
Sub kopieren()
Application.ScreenUpdating = False 'Bildschirmaktualisierung aus
Worksheets("Tabelle1").Range("A1:B10").Copy
Worksheets("Tabelle2").Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.ScreenUpdating = True 'Bildschirmaktualisierung an
End Sub
Da Du nur Werte überträgst geht das auch ohne kopieren, so:
Code:
Sub übertragen()
Worksheets("Tabelle2").Range("A1:B10").Value = Worksheets("Tabelle1").Range("A1:B10").Value
End Sub
Hier müssen beide Bereiche gleich groß sein.
das ist ja easy, danke! Die Werte ändern sich jedoch in der anderen Tabelle & sollen dann nicht angeglichen werden. Sondern wirklich nur, wenn das Makro ausgeführt wird. Von daher ist das mit dem Übertragen nicht möglich.
(03.03.2017, 01:58)atilla schrieb: [ -> ]Code:
Sub übertragen()
Worksheets("Tabelle2").Range("A1:B10").Value = Worksheets("Tabelle1").Range("A1:B10").Value
End Sub
Das geht ja doch, da die Angleichung nur stattfindet, wenn das Makro ausgeführt wird :)
Hi Julia,
(13.03.2017, 16:33)o0Julia0o schrieb: [ -> ]Das geht ja doch, da die Angleichung nur stattfindet, wenn das Makro ausgeführt wird :)
das ist eh klar, das kopieren der Daten erfolgt durch den Lauf des Makros.
Excel macht nichts von alleine, wodurch sollte die Übertragung starten. Eine ständige Übertragung bei jeder Veränderung erfolgt nur bei Worksheet_Change, *_Calculate, *_SelectionChange
oooder
wenn in der Zieltabelle Formeln eingetragen werden statt den Werten.