Microsoft Excel

Herbers Excel/VBA-Archiv

Problem mit englischen Datumsnamen

Betrifft: Problem mit englischen Datumsnamen von: Robert
Geschrieben am: 11.08.2014 09:33:01

Hallo zusammen,

ich habe eine Liste mit Daten.
In einer Spalte stehen Verkaufserlöse für ein bestimmtes Produkt.
In einer anderen Spalte steht der Monat, in dem die Erlöse erzielt wurden, als voller englischer Name.

Aufgabenstellung:
Ich möchte gerne die Erlöse per Monat via VBA akkredieren (VBA, da das ganze Teil einer größeren automatisierten Konsolidierung werden soll, die mit Formeln sehr unkomfortabel wird).

Ansatz:
Eine Schleife x = 1 to 12 und finden der entsprechenden Einträge mit MonthName(x)

Problem:
Excel erkennt die englischen Monatsnamen nicht!
Es gibt mir für Januar = Monthname(1) ein True, aber für January = Monthname(1) ein False

Gibt es eine Möglichkeit das zu umgehen, oder einen anderen (schnelleren?) Ansatz?

Vielen Dank und Viele Grüße
Robert

  

Betrifft: AW: Problem mit englischen Datumsnamen von: Dieter Klemke
Geschrieben am: 11.08.2014 09:56:32

Hallo Robert,

wenn du in der Systemsteuerung unter Regions- und Sprachoptionen auf "Englisch (Großbritannien)" umstellst, dann gibt Monthname die englischen Monatsnamen aus.

Viele Grüße
Dieter


  

Betrifft: AW: Problem mit englischen Datumsnamen von: Robert
Geschrieben am: 11.08.2014 10:09:45

Hallo Dieter,

Das ist mir bekannt, aber das Programm soll von verschiedenen Personen auf diesem Planeten benutzt werden und soll für alle funktionieren.
Daher leider für mich keine Option.

Trotzdem danke für die Lösung :)

viele Grüße
Robert


  

Betrifft: AW: Problem mit englischen Datumsnamen von: Daniel
Geschrieben am: 11.08.2014 09:57:15

Hi

Diese Excelfunktionen verwenden die Monatsnamen entsprechend der Ländervwerion deines Excels.

Probiere mal folgendes, um die Monatsnummer aus dem Monatsnamen zu berechnen (Schreibweise bitte nochmal prüfen, ich habe das jetzt nicht getestet):

dim MonatNr As Long
Dim MonatName as String
MonatName = "January"
MonatNr = Instr("xxJanFebMarAprMayJunJulAugSepOctNovDec", left(MonatName, 3)) / 3
Gruß Daniel


  

Betrifft: AW: Problem mit englischen Datumsnamen von: Robert
Geschrieben am: 11.08.2014 10:08:04

Hallo Daniel,
Funktionerit wunderbar, vielen Dank

Gruß
Robert


  

Betrifft: englische Monatsnamen von: Erich G.
Geschrieben am: 11.08.2014 10:19:20

Hi Robert,

January = Application.Text(29 * x, "[$-409]MMMM") ist True für x=2.

Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich


  

Betrifft: AW: englische Monatsnamen von: Robert
Geschrieben am: 11.08.2014 10:38:36

Hallo Erich,

Ich verstehe den Hintergrund zwar überhaupt nicht, aber es funktioniert. :)

vielen Dank!
Robert


  

Betrifft: [$-409] ist die entsprd Landeseinstellung und ... von: Luc:-?
Geschrieben am: 11.08.2014 14:06:13

…allemal die elegantere Lösung, Robert;
das hättest du auch im Archiv finden können, denn das hatten wir schon des Öfteren! :-|
Gruß, Luc :-?


  

Betrifft: Gebietsschema von: Erich G.
Geschrieben am: 11.08.2014 23:37:03

Hi Robert,
tja, da hatte Excel wohl noch ein Geheimnis preiszugeben... :-)

Schau mal im Dialog "Zellen formatieren", Kategorie "Datum" unter Gebietsschema nach.
Wenn du dann noch ein wenig mit Kategorie "Benutzerdefiniert" spielst, siehst du, wie Monatsnamen u.a.
einfach in andere Sprachen zu bringen sind.



Da kommt dann so etwas raus:

 BCDE
2TT.MM.JJJJMMMM[$-809]MMMM[$-10484]MMMM
306.02.2014FebruarFebruaryFeverje

Formeln der Tabelle
ZelleFormel
C3=B3
D3=C3
E3=D3


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

Die Gebietsschemata kann man auch in der TEXT()-Excelfkt. nutzen, in VBA als Application.Text. In

Application.Text(29 * x, "[$-409]MMMM")

ist x ist eine Monatsnummer (1 bis 12).
Die habe ich mit 29 multipliziert, um zu einem Datum im Monat x (Im Jahr 1900) zu kommen.
Für x=4 ist das einfach 29*4 = 116, das ist der 25.04.1900.
Mit 28 oder 30 anstelle der 29 würde das auch klappen.

Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich


  

Betrifft: AW: Gebietsschema von: Robert
Geschrieben am: 12.08.2014 12:46:16

Super erklärt, vielen Dank!!!
So verstehe ich was Sache ist und kanns das nächste mal selbst :)

Viele Grüße
Robert


 

Beiträge aus den Excel-Beispielen zum Thema "Problem mit englischen Datumsnamen"