Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1544to1548
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Code verkürzen, ohne select und ohne With

Code verkürzen, ohne select und ohne With
27.02.2017 17:40:33
Dieter(Drummer)

Guten Tag VBA Spezialisten,
geht dieser Code noch kürzer und ohne Select und ohne With?:

Sub XY_1()
Range("A2:A4").Select
With Selection.Font
.Name = "Arial"
.Size = 18
End With
End Sub

Diese Variante geht auch, aber ist die optimal?
Sub XY_2()
Range("A2:A4").Font.Name = "Arial"
Range("A2:A4".Font.Size = 18
End With
End Sub

Mit der Bitte um Hilfe und
Gruß, Dieter(Drummer)

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
..das soll gehen? End With .......
27.02.2017 17:48:25
robert
oT
AW: Kein Kommentar! owT
27.02.2017 17:53:38
Dieter(Drummer)
Die With-Klammer …
27.02.2017 18:10:30
RPP63
… ist schon das kürzeste, Dieter.
Nicht in Bezug auf Code-Zeilen, sondern auf Laufzeit:
With Range("A2:A4").Font
.Name = "Arial"
.Size = 18
End With
Gruß Ralf
AW: Danke Ralf für Rückmeldung und Info ...
27.02.2017 18:16:23
Dieter(Drummer)
... und noch einen schönen Abend.
Gruß, Dieter(Drummer)
AW: Code verkürzen, ohne select und ohne With
27.02.2017 18:29:06
Daniel
Hi
Das Optimum wäre mit With, aber ohne Select
Sub XY_2()
With Range("A2:A4")
.Font.Name = "Arial"
.Font.Size = 18
End With
End Sub
Wobei mit/ohne With für die Programmierung relevant ist und für die Laufzeit keinen oder nur einen geringen Einfluß hat, während das Select die Laufzeit stark beeinflußt.
Gruß Daniel
Anzeige
AW: Danke Daniel für Rückmeldung und ...
27.02.2017 18:39:30
Dieter(Drummer)
... Hinweis und werde es berücksichtigen.
Gruß und einen schöen Abend, Dieter(Drummer)
AW: Code verkürzen, ohne select und ohne With
27.02.2017 19:30:13
Gerd L
Hallo Dieter,
soo ist es hübscher; zumindest wenn die Variable mehrfach verwendet wird. :-)
Sub XY_4()
Dim R As Range
Set R = Range("A2:A4")
With R.Font
.Name = "Arial"
.Size = 18
End With
Set R = Nothing
End Sub
Gruß Gerd
Sehr richtig! Mache ich des Öfteren! ;-) owT
27.02.2017 19:47:44
Luc:-?
:-?
...wobei dann natürlich das 'With'-Konstrukt ...
27.02.2017 19:56:14
Luc:-?
…auch verzichtbar sein könnte, Gerd (& Dieter):
Sub XYZ_5()
Const adRB$ = "A2:A4"
Dim rB As Range
Set rB = Range(adRB)
rB.Font.Name = "Arial": rB.Font.Size = 18
'…
Set rB = Nothing
End Sub
Gruß, Luc :-?
Besser informiert mit …
Anzeige
AW: ...wobei dann natürlich das 'With'-Konstrukt ...
27.02.2017 21:50:15
Daniel
Nunja, der Vorteil der With-Klammer ist ja, dass man in vielen Fällen auf die Variable verzichten kann und trotzdem das Teilobjekt nur einmal hinschreiben muss.
Hilft ein bisschen, die Variablenanzahl in grösseren Projekten auf einer überschaubaren Menge zu halten.
Gruß Daniel
Sicher, aber mitunter wird dafür d.Pgm selber ...
27.02.2017 23:38:19
Luc:-?
…unübersichtlich, Daniel; ;-]
und dann gibt's ja noch den Fall, dass man gleichzeitig (nicht ineinandergeschachtelt!) mehrere With-Konstrukte gebrauchen könnte. Dann muss man das ohnehin so machen.
Gruß, Luc :-?
Die Kunst des Programmieren besteht u.a. darin ..
28.02.2017 01:17:56
Daniel
... erkennen zu können, wann es sinnvoller ist eine Variable anzulegen und wann die With-Klammer ausreicht.
Als dritte Option gibt es noch natürlich die Möglichkeit,die Variable als Objekt der With-Klammer zu verwenden.
Gruß Daniel


Anzeige
Dann, Let's be artifici… oh, artistically! ;-] owT
28.02.2017 01:47:24
Luc:-?
:-?
AW: Danke Luc:-?, auch eine interessante ...
28.02.2017 09:20:42
Dieter(Drummer)
... Variante.
Gruß, Dieter(Drummer)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige