Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1780to1784
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

VBA geht der Code zu kürzen

VBA geht der Code zu kürzen
10.09.2020 08:46:49
Tim
Hallo VBA/Excel Gemeinde ich möchte mir den Aufwand etwas erleichtern, kann man den Code auf eine Zeile kürzen.
Danke für eure Zeit
Grüße Tim
Sheets("Tabelle1").Cells(23, 1054) = TextBox43.Value 'schreiben
Sheets("Tabelle1").Cells(24, 1054) = TextBox44.Value 'schreiben
Sheets("Tabelle1").Cells(25, 1054) = TextBox45.Value 'schreiben
Sheets("Tabelle1").Cells(26, 1054) = TextBox46.Value 'schreiben
Sheets("Tabelle1").Cells(27, 1054) = TextBox47.Value 'schreiben
Sheets("Tabelle1").Cells(28, 1054) = TextBox48.Value 'schreiben
Sheets("Tabelle1").Cells(29, 1054) = TextBox49.Value 'schreiben
Sheets("Tabelle1").Cells(30, 1054) = TextBox50.Value 'schreiben

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA geht der Code zu kürzen
10.09.2020 08:58:38
Nepumuk
Hallo Tim,
teste mal:
Worksheets("Tabelle1").Cells(23, 1054).Resize(8, 1).Value = Application.Transpose( _
    Array(TextBox43.Text, TextBox44.Text, TextBox45.Text, TextBox46.Text, _
    TextBox47.Text, TextBox48.Text, TextBox49.Text, TextBox50.Text))

Gruß
Nepumuk
AW: VBA geht der Code zu kürzen
10.09.2020 09:28:25
Tim
Hallo Nepumuk,
Danke dir so geht es, habe jetzt etwas weniger zum schreiben. Da stellt sich bei mir auch gleich die nächste Frage, geht das auch beim lesen der Textboxen.Weil das habe ich nach dem selben Prinzip gemacht.
Grüße Tim
Anzeige
AW: VBA geht der Code zu kürzen
10.09.2020 09:52:16
Tim
hier mal das was ich verwendet habe
Grüße Tim
Me.TextBox49.Value = Range("ANO23") 'lesen
Me.TextBox50.Value = Range("ANO24") 'lesen
Me.TextBox51.Value = Range("ANO25") 'lesen
Me.TextBox52.Value = Range("ANO26") 'lesen
Me.TextBox53.Value = Range("ANO27") 'lesen
Me.TextBox54.Value = Range("ANO28") 'lesen
Me.TextBox55.Value = Range("ANO29") 'lesen
Me.TextBox56.Value = Range("ANO30") 'lesen
AW: VBA geht der Code zu kürzen
10.09.2020 10:07:06
Nepumuk
Hallo Tim,
das geht nur mit einer Schleife:
Dim lngIndex As Long
With Worksheets("Tabelle1")
    For lngIndex = 23 To 30
        Controls("TextBox" & CStr(lngIndex + 26)).Text = .Cells(lngIndex, 1055).Text
    Next
End With

Gruß
Nepumuk
Anzeige
AW: VBA geht der Code zu kürzen
10.09.2020 10:32:54
Tim
Hallo Nepumuk, ich muss mich wohl doch mal an die Schleifen rantrauen um das ganze etwas zu kürzen. Das mit den Schleifen werde ich dann heute Abend nach der Arbeit mal ausprobieren.Ich danke euch beiden für die schnelle und freundliche Hilfe.
Grüße Tim
AW: VBA geht der Code zu kürzen
10.09.2020 09:56:59
Daniel
HI
wenn du die TextBoxen fest mit den Zellen verknüpfen willst, ist es am einfachsten wenn du die Adresse der Zielzelle (inkl Tabellenblattnamen) in die Eigenschaft LinkedCell / ControlSource schreibst.
dann musst du nichts programmieren und die Verknüpfung ist bidirektional.
sollten die TextBoxen Teil einer Userform sein und die TextBoxen eine Nummerierung haben die parallel zu den zu verknüpfenden Zellen verläuft, wäre auch eine Schleife denkbar:
for x = 0 to 7 'Anzahl -1
Sheets("Tabelle1").Cells(23 + x, 1054).value = Userform1.Controls("TextBox" & 43 + x).Text
Next
Gruß Daniel
Anzeige
AW: VBA geht der Code zu kürzen
10.09.2020 10:23:25
Tim
Hallo Daniel ich danke dir auch für deine Mühe, mit Schleifen stehe ich in VBA noch nicht so ganz im grünen. VBA Kenntnisse bescheiden. Ich werde das aber mal heute Abend auch mal austesten und probieren. Bei deiner Antwort ist mir aufgefallen das ich zu wenig Infos gegeben habe. Die Werte werden aus einer Userform gelesen und geschrieben.Danke nochmal an euch beide,tolles Forum

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige