Registriert seit: 08.07.2016
Version(en): 2016
03.03.2017, 00:20
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!
Registriert seit: 14.04.2014
Version(en): 2003, 2007
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.
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
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.
Registriert seit: 29.09.2015
Version(en): 2030,5
oder
Code:
Sub M_snb()
sheets(array(Tabelle1","Tabelle2")).fillacrosssheets sheets("Tabelle1").Range("A1:B10")
End Sub
Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:1 Nutzer sagt Danke an snb für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
(03.03.2017, 02: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 :)
Registriert seit: 10.04.2014
Version(en): 2016 + 365
13.03.2017, 18:20
(Dieser Beitrag wurde zuletzt bearbeitet: 13.03.2017, 18:20 von Rabe.)
Hi Julia,
(13.03.2017, 17: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.
Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:1 Nutzer sagt Danke an Rabe für diesen Beitrag 28
• o0Julia0o