Welchen sinn hat die zeile with worksheets VBA

Hallo!

ich würde mich freuen, wenn mir jemand sagen könnte, was die Zeile „with worksheets“ innerhalb einer VBA Programmierung, zu Beginn des Programmes hat!!
Vielen Dank im Voraus!!!

Hallo,

das ist der Beginn eines Abschnitts, in dem man sich die Eingabe des Schlüsselworts „Worksheets“ vor seinen Eigenschaften/Methoden sparen kann. Der Abschnitt erstreckt sich bis zur Zeile „End With“

Zwischen den Zeilen „With Worksheets“ und „End With“ kann man also z.B. statt „Worksheets.Add“ schreiben: „.Add“

Das spart Tipparbeit, macht den Code übersichtlicher, und er wird außerdem schneller ausgeführt.

Die gleichen Informationen erhältst Du übrigens, wenn Du den Cursor in das Schlüsselwort „With“ stellst und F1 drückst…

Beste Grüße
Axel

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Schau dir folgende Programmierung an:

With Worksheets(„Tabelle1“).Range(„A1:A16“)
With .Font
.Bold = True
.Size = 12
.Name = „Arial“
End With
.Value = „Hallo!“
End With

Mit „With / End With“ kannst du die Programmierung vereinfachen. Anstatt zu schreiben:

Worksheets(„Tabelle1“).Range(„A1:A16“).Font.Bold = true
Worksheets(„Tabelle1“).Range(„A1:A16“).Font.Size = 12
Worksheets(„Tabelle1“).Range(„A1:A16“).Font.Name = Arial
Worksheets(„Tabelle1“).Range(„A1:A16“).Value = „Hallo!“

kannst du mit „With / End with“ den Programmieraufwand veringern. Es geht mit „With / End with“ aber auch ohne.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo bacca lauri,

darf ich Dich einfach an diesen LINK verweisen?
/t/excel-vba-doofe-frage-zu-with-function/4644236

Schöne Grüße

Hallo,

das ist ganz einfach: Worksheets(…) definiert ein bestimmtes Tabellenblatt von Excel. Der Befehl „with worksheets(…)“ heisst also nichts anderes als : " Mit Tabellenblatt … mache (folgendes)"

M.f.G. namina

Hallo namina!
ich glaube mit dieser Information bin ich
ausreichend informiert.Ich bedanke mich recht herzlich für die Hilfe! Gruß!
lauri

Hallo Andrusus!
vielen Dank für den Link!!
Gruß!

Hallo!
vielen Dank für die Hilfe!!!

Hallo Axel!
ich bedanke mich recht herzlich für die
Hilfe! Danke!

Hallo.

das ist nur eine Eingabevereinfachung vom Programmierer. Damit vermeidet er, dass er „Worksheets“ ständig eintippen muss.
Anstatt dass, er dies tut, muss er im Code nur einen Punkt eingeben.

Z.B.
with worksheets
.activate
.cells(1,1)
end with

ist gleichbedeutend mit

worksheets.activate
worksheets.cells(1,1)

Ich hoffe, ich konnte helfen.

Gruß
Welga

Hallo!

ja, Sie konnten mir helfen! Vielen Dank deshalb!!!
Gruß,

lauri

Hi,

mit der With-Anweisung kann auf ein entsprechendes Objekt hingewiesen werden, das Objekt kann dann im folgenden weggelassen werden.

Beispiel:

Public Function Test()
Dim Worksheets As Excel.Worksheets, ASheet As Excel.Worksheet

Set Worksheets = ActiveWorkbook.Worksheets

With Worksheets
Set ASheet = .Add
Debug.Print .Count
End With

End Function

Das ist genau das gleiche wie

Public Function Test()
Dim Worksheets As Excel.Worksheets, ASheet As Excel.Worksheet

Set Worksheets = ActiveWorkbook.Worksheets

Set ASheet = Worksheets.Add
Debug.Print Worksheets.Count

End Function

Viele Grüße

S. Henkel

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]