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

Ich weiß nicht weiter ;-(

Ich weiß nicht weiter ;-(
17.05.2003 18:10:38
Ralf
Hallo,

ich habe schon seit gestern ein riesiges Problem mit einem Makro. Und zwar schreibt das Makro mehrer Felder meiner Ausgangstabelle als Satz in eine neue Tabelle. Problem bei der ganzen Sache ist, das in der neuen Tabelle in Spalte D ein Zahlenwert nicht in einen Euro-Wert formatiert wird. Es lassen sich noch nicht einmal mehrere dort hingeschriebene Werte summieren, auch kann ich die Zellen in die das Makro Werte reingeschrieben hat nicht mal umformatieren. Doppelklicke ich jedoch eine solche Zelle und mach dann Enter ist das Euro-Zeichen auf einmal da und es läßt sich mit den geklickten Zellen auch eine Summe bilden. Hat da vielleicht jemand ne Ahnung woran das liegen kann???

Viele Grüße und ein schönes Wochenende
Ralf

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Ich weiß nicht weiter ;-(
17.05.2003 18:53:18
Klaus-Dieter
Hallo Ralf,

versuche es mal nach diesem Muster:


Range("A1").NumberFormat = "#,##0.00 €"
Range("A1") = deinWert

Gruß Klaus-Dieter
KLaus-Dieter's Excel und VBA Seite


Noch ne Frage
17.05.2003 19:06:40
Ralf
Hallo Klaus-Dieter,

bloß wie bastel ich sowas in meinen Code, schließlich sind es keine feststehenden Zellen, das Makro schreibt immer in die nächste freie Zeile, ich kopier Dir den teil mal hier rein, sieh bitte selbst:

With WS1
LetzteZeile = .[a65536].End(xlUp).Row + 1
.Cells(LetzteZeile, 1) = WS2.[d23]
.Cells(LetzteZeile, 2) = WS2.[e23]
.Cells(LetzteZeile, 3) = WS2.[d20]
.Cells(LetzteZeile, 4) = WS2.[d26]
.Cells(LetzteZeile, 8) = WS2.[d2]
End With

Gruß, Ralf

Anzeige
Re: Noch ne Frage
17.05.2003 19:53:22
Klaus-Dieter
Hallo Ralf,

das würde dann so aussehen:


With WS1
LetzteZeile = .[a65536].End(xlUp).Row + 1
.Cells(LetzteZeile, 1) = WS2.[d23]
.Cells(LetzteZeile, 2) = WS2.[e23]
.Cells(LetzteZeile, 3) = WS2.[d20]
.Cells(LetzteZeile, 4).NumberFormat = "#,##0.00 €"
.Cells(LetzteZeile, 4) = WS2.[d26]
.Cells(LetzteZeile, 8) = WS2.[d2]
End With

Code eingefügt mit: Excel Code Jeanie

Ich bin davon ausgegangen, das das Format in Spalte D definiert wird.

Gruß Klaus-Dieter
Klaus-Dieter's Excel und VBA Seite

Anzeige
Und wo bleibt das WS2.[d26]
17.05.2003 20:06:11
Ralf
Hallo Klaus-Dieter,

wo hast Du denn den Namen des Feldes ( WS2.[d26] ) gelassen, woher soll er denn jetzt wissen, was er dort als Euro formatiert einfügen soll?

Gruß, Ralf

Re: Und wo bleibt das WS2.[d26]
17.05.2003 20:10:16
Klaus-Dieter
Hallo Ralf,

sieh die mal die folgende Zeile an. Es wird zweimal die gleiche Zelle angesprochen, einmal Format, einmal Wert.

Gruß Klaus-Dieter

Sorry übersehen, läuft aber trotzdem nicht
17.05.2003 20:15:59
Ralf
Hallo Klaus-Dieter,

hab ich doch glatt die eine Zeile übersehen, sorry. Habs aber gerade ausprobiert und es haut immer noch nicht hin. Das Euro-Zeichen kommt wieder erst nach dem Doppelklick und Enter auf die Zelle. Komisch, ich weiß da echt nicht weiter.

Gruß, Ralf

Anzeige
Re: Sorry übersehen, läuft aber trotzdem nicht
17.05.2003 20:29:10
Klaus-Dieter
Hallo Ralf,

das kann ich so auch nicht genau sagen, wenn du willst, schick mir die Ausgangstabelle mal, dann sehe ich mir das an. Das Makro, mit dem du die Werte kopierst würde ich auch brauchen.

Gruß Klaus-Dieter

Ich glaube ich weiß woran es liegt.....
17.05.2003 20:44:12
Ralf
Hallo Klaus-Dieter,

ich habe nochmal ein bißchen rumexperimentiert und komm der Sache langsam auf die Schliche. Also, das besagte Feld was kopiert werden soll oder viel mehr der darin stehende Wert wird zuvor mit einer ziemlich langen Formel in der Zelle D26 ermittelt. Schmeiß ich die Formel raus und trage einfach die Zahl ein, die durch die Formel ermittelt wurde dann kopiert er sauber auf das andere Blatt und dort wird auch das Euro-Zeichen angezeigt. Ich denke damit kommen wir der Sache schon mal einen Schritt näher. Da mag er wahrscheinlich irgendwas an der Formel in der Ausgangszelle nicht. Ich kann Dir ja mal den Inhalt der Zelle D26 hier reinkopieren:

=WENN(A1="";"";WENN(A14="KONTAKTDATEN";RECHTS(A37;LÄNGE(A37)-43);WENN(A15="KONTAKTDATEN";RECHTS(A38;LÄNGE(A38)-43);"NIX")))

Diese Formel ermittelt mir einen Preis aus einem zuvor eingefügten Text. Und diesen Preis möchte ich nun in die andere Tabelle kopieren, mit ein paar anderen Daten als kompletten Datensatz. Dafür habe ich besagtes Makro zusammengestrickt. Na ja, das Ergebnis kennst Du ja, das Problem mit dem Euro-Zeichen. Ich denke, die Wurzel des Übels liegt schon in der Formel in D26, wahrscheinlich muß man hier schon definieren was es für ein Wert ist. Nur so ne Vermutung.

Gruß, Ralf


Anzeige
Re: Ich glaube ich weiß woran es liegt.....
17.05.2003 21:01:52
Klaus-Dieter
Hallo Ralf,

da liegst du sicher richtig, da du den Wert aus Texten zusammensetzt, wird das Ergebnis auch ein Textformat haben. Du kannst ja mal versuchen, ob es was bringt, die Zelle D26 als Währungsformat zu formatieren.

Gruß Klaus-Dieter

Währung macht er nicht in D26
17.05.2003 21:09:55
Ralf
Hallo Klaus-Dieter,

ich glaube wir sind da auf der richtigen Spur. Habe die Zelle mit der Formel mal auf Währung umgestellt und siehe da, auch hier zeigt er kein Euro an. Also muß ich in der Formel noch etwas einbauen, was aus meinem ausgeschnittenem Text eine Zahl macht. Hast Du da ne Idee, wie man ihm das beibringen kann?

Gruß, Ralf

Ich habs *jubel*
17.05.2003 21:23:25
Ralf
Hallo Klaus-Dieter,

hab nebenher noch ein wenig gegooglet und bin, nachdem ich wußte wonach ich suchen muß, auf einen Beitrag hier ausm Archiv gestoßen. Für alle die es interessiert hier eine kleine Anweisung, wie man solch ein Problem behebt:

1. Schreibe in eine freie Zelle eine "1" (ohne Anführungszeichen).
2. Kopiere die Zelle mit der "1".
3. Markiere den gesamten Text-Zahlen-Bereich.
4. Bearbeiten / Inhalte einfügen / Werte / Multiplizieren / OK
5. Esc-Taste drücken.
6. Die "1" wieder löschen.
7. Fertig

Die vorherigen Text-Zahlen sollten jetzt reine Zahlen sein, mit denen Du auch rechnen kannst.

Den ganzen Thread findet man auch unter http://xlarchiv.herber.de/76to80/t78232.htm

Viele Grüße, Ralf

Anzeige
Re: Noch ne Frage
17.05.2003 21:24:30
L.Vira
Vorausgesetzt, die Werte in den zellen sind numerisch:
With WS1
LetzteZeile = .[a65536].End(xlUp).Row + 1
.Cells(LetzteZeile, 1) = WS2.[d23]*1
.Cells(LetzteZeile, 2) = WS2.[e23]*1
.Cells(LetzteZeile, 3) = WS2.[d20]*1
.Cells(LetzteZeile, 4) = WS2.[d26]*1
.Cells(LetzteZeile, 8) = WS2.[d2]*1
End With
Re: Ich glaube ich weiß woran es liegt.....
17.05.2003 21:24:58
PeterW
Hallo Ralf

multipliziere das Ergebnis mit 1:

=WENN(A1="";"";WENN(A14="KONTAKTDATEN";(RECHTS(A37;LÄNGE(A37)-43))*1;WENN(A15="KONTAKTDATEN";(RECHTS(A38;LÄNGE(A38)-43))*1;"NIX")))


Gruß
Peter

Re: Ich glaube ich weiß woran es liegt.....
17.05.2003 22:20:13
Ralf
Hallo Peter,

manchmal sind die Lösungen so einfach, da hätte man auch eher drauf kommen können, habe ziemlich zeitgleich zu Deinem Posting die Lösung via Google ausm Netz gefischt. Funktioniert 100%ig. Na dann kann ich endlich an meiner Tabelle weiter basteln. Trotzdem auch Dir noch einmal ein dickes Dankeschön wie auch an allen anderen die nir hier schon geholfen haben.

Schönes Wochenende
Ralf

Anzeige
Danke, hatte den Beitrag übersehen
18.05.2003 10:05:34
Ralf
Hallo L.Vira,

ich war gestern Abend wohl in den Postings mit Klaus-Dieter vertieft, dass ich Deine Antwort ganz übersehen haben. Na ja, jedenfalls sind wir dann wohl beide fast zur gleichen Zeit auf die gleiche Lösung gekommen, das mit der Multiplikation mit eins, eigentlich ganz einfach, aber man muß erst mal drauf kommen. Danke auch für Deine Hilfe und noch einen schönen sonntag.

Ciao, Ralf

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige