Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA, Zellen multiplizieren
#1
Hallo Leute,

ich bin noch sehr neu in der VBA Welt und habe bisher alles einigermaßen hinbekommen, das folgende übersteigt aber meine googlefähigkeiten!

In meiner Tabelle steht in Spalte H eine Länge, eine Fläche oder ein Gewicht. In Spalte J steht der preis pro kg, pro qm oder pro m. Dabei stehen auch immer die jeweiligen einheiten.

In meiner Zelle die gefüllt werden soll (Spalte F) möchte ich die Zahlen aus Spalte H (ohne einheit) x die Zahl aus Spalte J (auch ohne einheit) rechnen. Ich möchte das aber nicht in der kompletten spalte F machen, sondern nur in der Zelle in der ich gerade bin.

Also z.b. ist die größe 2,3 m², der preis pro qm ist 0,95 €/m² und ich möchte =2,3 * 0,95 rechnen.
Habt ihr mein Problem verstanden? Und habt ihr eine Lösung dafür? Ich wäre euch super dankbar!

LG seb-korn
Antworten Top
#2
bitte mach eine Beispieldatei!!
Antworten Top
#3
Mir ist beim erstellen der Datei ein weiteres Problem aufgefallen, das hab ich in der Datei selbst noch kurz beschrieben.


Angehängte Dateien
.xlsx   Beispieldatei.xlsx (Größe: 10,04 KB / Downloads: 4)
Antworten Top
#4
Ganz einfache Lösung: Spar dir VBA und schreibe die Einheit in eine eigene Spalte. Deine bisherige Vorgehensweise ist einfach unsinnig und erschwert nur das Leben. Spalte J kannst du von mir aus als Währung formatieren, dass der Preis pro Einheit gilt ist dann ja wohl logisch.
Und schreib nicht unbedingt 45 min sondern 0,75 h.
Schöne Grüße
Berni
Antworten Top
#5
Mhm ja, das könnte man durchaus machen, das Problem ist nur, dass meine Tabelle ca. 1200 Zeilen hat, die zu 70% schon gefüllt sind, weil ich da immer stück für stück neue prozesse bekommen habe. Jetzt sind es relativ schnell deutlich mehr zeilen geworden bei denen spalte f noch ausgefüllt werden muss und ich hatte gehofft das etwas automatisieren zu können. Außerdem arbeiten mehrere Leute an dem Dokument, sodass die das dann auch nochmal machen müssten. aber wenn es nicht geht, dann werde ich es händisch machen.
Antworten Top
#6
Ich sehe dabei kein Problem. Füge deine Hilfsspalte ein und arbeite mit diesen Formeln, um die Spalten aufzuteilen:

Generelles zu Textfunktionen: http://www.herber.de/excelformeln und bitte suchen .../formeln.html?gruppe=2
Speziell für dich: http://www.herber.de/excelformeln und bitte suchen .../formeln.html?welcher=100

Es lohnt sich, einmal den Aufwand anzugehen.
Schöne Grüße
Berni
Antworten Top
#7
Okay, ich werde mich mal ran setzten, vllt mache ich es so, dass ich die neuen daten erst auftrenne und ausrechne und dann die daten wieder zusammenfüge
Antworten Top
#8
Also es funktioniert noch nicht so ganz, er trennt meine zahl nach einem komma, egal ob ich einen Punkt oder ein Komma als trennung habe. Ich hab leider nicht so viel mit den formeln gearbeitet, als das ich wüsste, an welcher stelle ich da jetzt drehen kann. und ich habe leider auch keine festen nachkommastellen, das ändert sich von zelle zu zelle...
Antworten Top
#9
Hab den fehler gefunden, das problem ist nur, dass ich jetzt ja für alle zellen die formel bearbeiten muss, wenn ich unterschiedlich viele zahlen habe. also wenn ich in der einen zelle 0,12 habe und in der nächsten 1,2345 muss ich ja die formel ändern.. geht das auch anders?
Antworten Top
#10
Gut, probieren wir was anderes. Welche Einheiten hast du denn? Können ja eigentlich nicht soviele sein, oder? Ich gehe mal anhand deiner Beispieldatei von m, m², kg, h und min aus. Dann kannst du so vorgehen:

2Hilfsspalten (in deinem Beispiel Spalte I und J)
1. Spalte

Code:
=WENN(RECHTS(H3;1)="²";"m²";WENN(RECHTS(H3;1)="m";"m";WENN(RECHTS(H3;1)="g";"kg";WENN(RECHTS(H3;1)="h";"h";"min"))))


2. Spalte

Code:
=--LINKS(H3;LÄNGE(H3)-LÄNGE(I3))


Die beiden Spalten kopieren und als Werte einfügen, damit du feste Werte hast.

In der Spalte mit dem Preis je Einheit entfernst du die Einheit, indem du die Spalte komplett markierst und dann Strg+H drückst. Es öffnet sich das Suchen/Ersetzen-Fenster. Gib bei "Suchen nach" den Wert " €*" (ohne die Anführungszeichen, jedoch inkl. Leerzeichen vor dem Eurosymbol) ein. Bei "Ersetzen durch" gibst du nichts ein. Dann auf Alle ersetzen klicken. Damit wurden die Einheiten gelöscht.

Wie bereits weiter oben erwähnt - arbeite entweder immer mit Stunden oder immer mit Minuten. Dementsprechend muss dann auch der Preis pro Einheit durchgehend €/h oder €/min sein. Alles andere ergibt nur Fehler.
Schöne Grüße
Berni
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste