Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
608to612
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
608to612
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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. ;-))

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
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
Gern geschehen... :-)
10.05.2005 09:15:49
Andi
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige