Hallo,
ich suche eine Möglichkeit in Excel (Version 2003), alle Zahlenwerte eines Tabellenblatts mit einem festen Faktor zu multiplizieren.
Also konkret habe ich eine Tabelle, die in verschiedenen Spalten Eurowerte enthalten und ich möchte die ganze Tabelle tagesaktuell in USD umrechnen können, aber natürlich auch wieder zurückschalten können. Das einfügen zusätzlicher USD-Spalten ist nicht okay, die Tabelle muss entweder komplett in USD oder komplett in EUR sein. Muss ich dazu ein neues Tabellenblatt anlegen und jedes einzeln Feld verknüpfen und mit dem Faktor (den ich dann in eine feste Zelle schreibe) multiplizieren oder geht das auch irgendwie eleganter per Makro oder so?
Die Zeilen meiner Tabelle variieren in der Anzahl und ich möchte ungern dann irgendwo „#NA“ oder „#Wert“ stehen haben…
Danke schonmal im Vorraus für Eure Ideen!
Hallo!
Wieder mal rate ich zur While-Schleife, sofern die letzte Wert-Zelle nicht fix ist.
f ist der Faktor in C1
Spalte A birgt die Werte
Spalte B die Produkte
Sub test()
f = Worksheets(„Tabelle1“).Cells(1, 3)
a = „start“
i = 1
s = 0
While s = 0
a = Worksheets(„Tabelle1“).Cells(i, 1)
If a = „“ Then
s = 1
Else
b = a * f
Worksheets(„Tabelle1“).Cells(i, 2) = b
i = i + 1
End If
Wend
End Sub
Ich hoffe, das hilft dir weiter.
Gruß, Leebo
Hallo,
vielen Dank für die schnelle Antwort.
Mit dieser Lösung habe ich dann aber in der Spalte A die Euro Werte und in der Spalte B die USD Werte, richtig?
Das Ziel ist, auf keinen Fall zwei Währungswerte auf einem Tabellenblatt zu haben.
Trotzdem Danke!
Ich werde es jetzt mal mit einem Makro versuchen. Alle Werte auf ein gesondertes Tabellenblatt kopieren, dort multiplizieren und dann wieder retour kopieren. Mal sehen ob es klappt.
Grüezi TraineeIC
Ich werde es jetzt mal mit einem Makro versuchen. Alle Werte
auf ein gesondertes Tabellenblatt kopieren, dort
multiplizieren und dann wieder retour kopieren. Mal sehen ob
es klappt.
Hmmm, warum so umständlich… 
Schreibe den Faktor in eine Zelle und kopiere diese
Markiere alle Zellen
Menü: ‚Bearbeiten‘
Inhalte einfügen
[x] Multiplikation
[OK]
Nun sind alle Werte umgerechnet - beim zurück rechnen einfach dasselbe mit dem neuen Faktor tun.
Mit freundlichen Grüssen
Thomas Ramel
- MVP für MS-Excel -
Ich werde es jetzt mal mit einem Makro versuchen. Alle Werte
auf ein gesondertes Tabellenblatt kopieren, dort
multiplizieren und dann wieder retour kopieren. Mal sehen ob
es klappt.
Hallo TC,
machs dir doch nicht so schwer, für was neues Blatt…
Manuell ginge sowas so, irgendwo in eine freie Zelle den Dollarkurs schreiben, Zelle markieren, Strg+c, gewünschte Zellen markieren, Bearbeiten—Inhalte einfügen—Multiziplieren/Dividieren.
Dann bei Zellenformat die entsprechende Währung einstellen.
Kriegste das hin in Vba umzusetzen?
Gruß
Reinhard
Hey,
achso… du meinst, auf Knopfdruck die gegebenen Werte umrechnen und wiederum auf Knopfdruck zurückrechnen?
Dann kannst du meinen Code dahingehend ändern, dass die erste Spalte geändert wird. Zusätzlich brauchst du wohl eine 2. Subroutine, die dividiert und legst dir Buttons an oder du definierst 2 Zellen, die beim draufklicken die jeweilige Sub auslösen. Ich glaube nämlich, dass man eine Sub nicht - wie z.B. in Java - beim Buttonklick parametrisieren kann.
Gruß, Leebo
Dann kannst du meinen Code dahingehend ändern, dass die erste
Spalte geändert wird. Zusätzlich brauchst du wohl eine 2.
Subroutine, die dividiert und legst dir Buttons an oder du
definierst 2 Zellen, die beim draufklicken die jeweilige Sub
auslösen. Ich glaube nämlich, dass man eine Sub nicht - wie
z.B. in Java - beim Buttonklick parametrisieren kann.
Hallo Leebo,
ich kenne Java nicht.
Einer Sub beim Aufruf einen Parameter mitzugeben geht schon.
Die m.E. beste Lösung für diese ganze Anfrage ist, oben in den Leisten einen Button, der entweder die Aufschrift „DM“, äh, upps, „Eur“ hat oder „Dol“.
Klickt man auf den Button wenn da Eur steht geht das dahinter stehende makro von Dollars aus, rechnet alles um, ändert die Aufschrift des Buttons in „Dol“.
Da geschiehst dann umgekehrt wenn man jetzt draufklickt.
Beides geschieht mit nur einem Makro, der Übergabeparameter ist die Caption des Buttons.
Feature1 einer Lösung ist, es wird immer automtisch der grad aktuelle Dollarkurs aus dem Internet benutzt.
Problematisch wenn er sich zwischen Eu->Do und Dol->Eu ändert.
Gruß
Reinhard
Hey Reinhard
Einer Sub beim Aufruf einen Parameter mitzugeben geht schon.
Ok, wieder was gelernt 
Die m.E. beste Lösung für diese ganze Anfrage ist, oben in den
Leisten einen Button, der entweder die Aufschrift „DM“, äh,
upps, „Eur“ hat oder „Dol“.Beides geschieht mit nur einem Makro, der Übergabeparameter
ist die Caption des Buttons.
So hätte ich mir das auch gedacht, wusste aber leider keine elegante Umsetzung. Also auch von mir danke für die Infos.
Gruß, Leebo
Prima, Danke Euch allen, diese Funktion hatte ich irgendwie bisher übersehen.
Das ist ja simpel, werde ich gleich noch an anderen Stellen einsetzen.
Diese Funktion hatte ich irgendwie bisher übersehen.
Das ist ja simpel, werde ich gleich noch an anderen Stellen einsetzen.
Danke für die Hilfe!