Supportnet / Forum / Tabellenkalkulation
Zellen verknüpfen + VBA
Frage
Hallo Community,
hab mal wieder eine Frage zu VBA.
Meine Tabelle sieht hierbei wie folgt aus:
.....A.....B.....C
1...X....Y....XY
2...A....B....AB
3...S....T....ST
(Die Punkte sind nur wg. der Darstellung)
Nun möchte ich, wie oben dargestellt, in der Spalte C, den Wert kombiniert aus der jeweiligen Zeile aus den Spalten A + B ausgeben.
Das ganze möchte ich über ein Makro erreichen.
(das soll solange ausgeführt werden bis in Spalte A oder B kein Wert enthalten ist)
Freue mich über jede Antwort!
Viele Grüße
martl
Antwort 1 von nighty
hi martl
du musst dich auf jeden fall mit variablen beschaeftigen,ist bei exel aber leicht :)
a%=integer(nur zahlen)
a$=string(nur zeichen,was aber auch zahlen sein koennen oder gemischt eben)
um zum anfang den ueberblick zu wahren,nimm eindeutige namen fuer die variablen
hier koennten jetzt namen drin stehen,die anschliessend beide in a$ sind
a$=range("a1") + range("a2")
hier koennten jetzt zahlen drin stehen,die anschliessend beide addiert werden
a%=range("a1") + range("a2")
es werden 10 durchlaeufe erzeugt,wobei der aktuelle wert des durchlaufes in t% steckt,somit werden 10 zellen(a1-a10) von spalte a addiert
for t%=1 to 10
a%=range("a" & t%)
next t%
folgende befehle auch zu lernen sind
val(var),str(integer),len(string var),mid$(stringVAR,anfang,ende)
gruss nighty
du musst dich auf jeden fall mit variablen beschaeftigen,ist bei exel aber leicht :)
a%=integer(nur zahlen)
a$=string(nur zeichen,was aber auch zahlen sein koennen oder gemischt eben)
um zum anfang den ueberblick zu wahren,nimm eindeutige namen fuer die variablen
hier koennten jetzt namen drin stehen,die anschliessend beide in a$ sind
a$=range("a1") + range("a2")
hier koennten jetzt zahlen drin stehen,die anschliessend beide addiert werden
a%=range("a1") + range("a2")
es werden 10 durchlaeufe erzeugt,wobei der aktuelle wert des durchlaufes in t% steckt,somit werden 10 zellen(a1-a10) von spalte a addiert
for t%=1 to 10
a%=range("a" & t%)
next t%
folgende befehle auch zu lernen sind
val(var),str(integer),len(string var),mid$(stringVAR,anfang,ende)
gruss nighty
Antwort 2 von Guenter
Hallo,
Vorschlag:
Das Makro läuft nur bis zum Ende der Spalte A!
Gruß
Günter
Vorschlag:
Sub test()
Dim n
For n = 1 To Cells(Rows.Count, 1).End(xlUp).Row
Cells(n, 3).Value = Cells(n, 1).Value & Cells(n, 2).Value
Next
End Sub
Das Makro läuft nur bis zum Ende der Spalte A!
Gruß
Günter
Antwort 3 von martl
Hallo,
@nighty:
stimmt, man sieht, dass ich von VBA (noch) Null Ahnung habe. Selbst die Variablendeklaration macht mir noch Probleme. (Hab jetzt schon den dritten "VBA-Buch"-Anlauf unternommen, das dauert aber noch bis ich die rund 800 Seiten durchhabe, also bei solchen Fragen bitte nicht verzweifeln, ;)). Manchmal (:)?) fehlt mir eben noch der Durchblick. Aber trotzdem vielen Dank, dass Du Dir die Zeit genommen hast, erfolgreich etwas Licht in den VBA-Dschungel zu bringen.
@Günter:
vielen, vielen Dank für das Makro, das genau so funktioniert, wie ich mir das vorgestellt habe und mich auch bei den VBA-Kenntnissen wieder ein
Stückchen vorangebracht hat.
Schon super, wenn man sich auf solche Profis wie Euch verlassen kann.
Viele Grüße und ein nochmaliges Dankeschön
martl
@nighty:
stimmt, man sieht, dass ich von VBA (noch) Null Ahnung habe. Selbst die Variablendeklaration macht mir noch Probleme. (Hab jetzt schon den dritten "VBA-Buch"-Anlauf unternommen, das dauert aber noch bis ich die rund 800 Seiten durchhabe, also bei solchen Fragen bitte nicht verzweifeln, ;)). Manchmal (:)?) fehlt mir eben noch der Durchblick. Aber trotzdem vielen Dank, dass Du Dir die Zeit genommen hast, erfolgreich etwas Licht in den VBA-Dschungel zu bringen.
@Günter:
vielen, vielen Dank für das Makro, das genau so funktioniert, wie ich mir das vorgestellt habe und mich auch bei den VBA-Kenntnissen wieder ein
Stückchen vorangebracht hat.
Schon super, wenn man sich auf solche Profis wie Euch verlassen kann.
Viele Grüße und ein nochmaliges Dankeschön
martl
Antwort 4 von nighty
hi martl
bin amatuer ,und mein basicstil ist 20 jahre alt,mein stand in algebra und mathe entspricht der 6 klasse vielleicht.
gruss nighty
bin amatuer ,und mein basicstil ist 20 jahre alt,mein stand in algebra und mathe entspricht der 6 klasse vielleicht.
gruss nighty

