Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

worksheetfunction aufweiten

Forumthread: worksheetfunction aufweiten

worksheetfunction aufweiten
09.05.2005 14:49:52
Harald
Hallo Forum,
ich knusper schon ne Weile an diesem vba-Keks und kriegs nicht hin.
Es geht darum mehrere 6-stellige Ziffern per Schleife in 3 Stellen rechts und 3 Stellen links zu splitten und mit der darunterliegenden Zelle zu summieren.
Die 6-stellige Ziffer ist als Text formatiert.
Bsp. in A2 steht 001000 und darunter in A3 steht 002003 (jeweils Text)
Nach Makrodurchlauf soll in B3 eine 3 für die linken Werte stehen (001 + 002) und in C3 auch eine 3 (000 + 003)
Hier mein Ansatz per worksheetfunction.Er meckert mir jedesmal die Funktion an.
;-((

Sub test()
For i = 83 To 121 Step 2
Cells(15, i) = WorksheetFunction.Sum(Left(Cells(2, i), 3), Left(Cells(3, i)))
For n = 84 To 121 Step 2
Cells(15, n) = WorksheetFunction.Sum(Right(Cells(2, n), 3), Right(Cells(3, n)))
End Sub

Ein Versuch mit worksheetfunction.sum(value(left...etc hat auch nix gebracht.
Die Texte vorher umzuwandeln geht auch nicht. (000003 würde zu 3 rechts und 3 links)
Die vba- Hilfe gibt dazu keine Beispiele. Vielleicht kann mir jemand von euch weiterhelfen.
Wäre prima.
Gruß
Harald
Rückmeldung folgt garantiert morgen. Hab jetzt (zum Glück für meinen unwilligen PC)Feierabend. ;-))
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: worksheetfunction aufweiten
09.05.2005 14:58:02
Holger
Cells(15, i) = WorksheetFunction.Sum(Val(Left(Cells(2, i), 3)), Val(Left(Cells(3, i))))
mfg Holger
AW: worksheetfunction aufweiten
09.05.2005 15:06:34
Andi
Hi,
hier eine Variante mit benutzerdefinierten Funktionen mit variabler Länge der zu addierenden Teil-Strings:
https://www.herber.de/bbs/user/22343.xls
Schönen Gruß,
Andi
Anzeige
AW: worksheetfunction aufweiten
10.05.2005 07:41:50
Harald
Hallo Holger,
vielen Dank für deinen Vorschlag, leider meckert er mir das zweite !? Left in der 3. Zeile an (Argument ist nicht optional).

Sub test()
For e = 83 To 159 Step 2
For i = 83 To 121
Cells(15, e) = WorksheetFunction.Sum(Val(Left(Cells(2, i), 3)), Val(Left(Cells(3, i))))
For n = 84 To 160 Step 2
Cells(15, n) = WorksheetFunction.Sum(Val(Right(Cells(2, i), 3)), Val(Right(Cells(3, i))))
End Sub

Gruß
Harald
Anzeige
AW: worksheetfunction aufweiten
10.05.2005 08:57:36
Andi
Guten Morgen,
da fehlt auch ein Argument, nämlich wie viele Zeichen von links denn nun gemeint sind; es muss so heissen:
Val(Left(Cells(3, i), 3)))
Bei dem zweiten Right weiter unten analog.
Schönen Gruß,
Andi
Pfeif....
10.05.2005 09:08:21
Harald
Danke Andi,
das wars.
Und ich geh mir jetzt ein Loch suchen, indem ich mich verkriechen kann ;-))
Gruß
Harald
Anzeige
Gern geschehen... :-)
10.05.2005 09:15:49
Andi
.
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige