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.

Werte löschen ohne Blatt anzuzeigen
#1
Question 
hi, wie kann ich in Tabelle2 die Felder B3:B5 löschen, ohne dass das Tabellenblatt angezeigt wird?

So wird ja Tabelle2 angezeigt:
Code:
Worksheets("Tabelle2").Select
Range("B3:B5").Select
Selection.ClearContents
Antworten Top
#2
Hallo Julia,

die einfachste Möglichkeit, mit Application.ScreenUpdating. Wie das funktioniert,
habe ich Dir eigentlich soeben in Deinem Nachbarthread erklärt  :19:  Da komme
ich nämlich gerade her  :05:
Probiere es mal aus.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#3
Hi Julia,


Code:
Option Explicit

Sub LoeschenWS2()
   With Worksheets("Tabelle2")
   .Range("B3:B5").ClearContents
   End With
End Sub


Code in 'Diese Arbeitsmappe'. Egal in welchem Blatt du bist; es werden die angegebenen Bereich gelöscht, ohne Tabelle2 zu zeigen (es sei denn, du bist gerade in diesem Blatt).
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#4
Hallo Günter,

(16.11.2017, 08:13)WillWissen schrieb:
Code:
Option Explicit

Sub LoeschenWS2()
   With Worksheets("Tabelle2")
   .Range("B3:B5").ClearContents
   End With
End Sub


Code in 'Diese Arbeitsmappe'.

Ich würde deinen Code in ein allgemeines Modul einfügen, denn in diese Arbeitsmappe hat er eigentlich nichts zu suchen.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#5
Hi Stefan,

danke für deine Verbesserung (du weißt ja, VBA und ich...  :32:)
Kannst du mir bitte noch erklären, warum der Code in einem allg. Modul besser aufgehoben ist? Danke dir schon mal.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#6
Moin Günter!
Bin zwar nicht der Stefan, aber:
In Objekt-Klassen wie Tabelle, Workbook, UserForm sollte auch nur Code stehen, der Bezug zum Objekt hat.
Dazu gehören vor allem Ereignis-Makros.

Hier mal eine korrekte Referenzierung zum Problem des TE:
Code:
Application.ThisWorkbook.Worksheets("Tabelle2").Range("B3:B5").ClearContents

Was im linken Bereich weggelassen werden kann, muss im Zweifel überprüft werden.
Hier reicht sicherlich:
Code:
Worksheets("Tabelle2").Range("B3:B5").ClearContents

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • o0Julia0o
Antworten Top
#7
Hi Ralf,

vielen Dank für die prima Erklärung; das hilft mir sehr.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#8
Thumbs Up 
jo, danke euch!
Antworten Top


Gehe zu:


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