Herbers Excel-Forum - das Archiv

Englische Excel Version

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Englische Excel Version
von: WilhelmR.

Geschrieben am: 22.12.2006 12:26:29
Hilfe,
ich habe ein Riesenproblem.
Ich lese eine Liste von 15 Begriffen aus Spalte A per VBA in eine ComboBox ein.
In Spalte B stehen jeweils daneben die Ziffern 1-15.
Ergo, ich sehe in der ComboBox den Begriff, wähle aus und es wird je nach Auswahl in einer fixen Zelle die zugehörige Nummer ausgegeben.
Läuft einwandfrei.
Diese Datei habe ich an einen Freund geschickt, der eine englische Excel Version benutzt.
Funktioniert nicht.
Der Freund sieht in der ComboBox nicht die Begriffe, sondern die Ziffern und ein Ergebnis bekommt er schon garnicht.
Wie kommt man da wieder raus?
Wilhelm
Bild

Betrifft: AW: Englische Excel Version
von: firmus

Geschrieben am: 22.12.2006 14:44:55
Hallo Wilhelm,
es gibt m.E. 3 Fehlerquellen.
a) Punkt anstelle von Komma
b) Datumsformat
c) in VBA generierte Formeln in die Zellen.
Der Code selbst - so meine Erfahrung - läuft Problemlos in Deutsch und Englisch.
Behebung von a) + b):
---------------------
Einstellungen in den "Datum- + Spracheinstellung" im ControlPanel in Windows.
auf German(Germany) einstellen.
Behebung von c):
----------------
"just change your coding" english + deutsche Version separat
Viel Erfolg und trotzdem Schöne Weihnachtsfeiertage.
Firmus
Bild

Betrifft: AW: Englische Excel Version
von: WilhelmR.

Geschrieben am: 22.12.2006 16:10:48
Lieber Firmus,
deine Nachricht hilft mir sehr.
Wenn du mir jetzt noch sagst wo ein Komma nötig und wo dieses in einen Punkt umgebaut werden soll, bin ich richtig dankbar.
daher anbei mal der Code:
Option Explicit
Private Sub cmbMaterial_Change()
''gibt den ermittelten Wert in zelle P9 aus:
Worksheets("Preisermittlung").Range("P9").Value = cmbMaterial.List(cmbMaterial.ListIndex, 1)
Worksheets("Preisermittlung").Range("B18").Select
End Sub

Private Sub Worksheet_Activate()
Dim iComBox   As Integer
Dim iZeile    As Integer
cmbMaterial.ColumnCount = 2
cmbMaterial.ColumnWidths = ("4,5 cm; 0,0 cm")
''legt den Bereich fest
For iZeile = 24 To 39
''schliesst Teilbereiche aus
If iZeile <> 25 And iZeile <> 26 And iZeile <> 27 _
And iZeile <> 33 And iZeile <> 34 _
And iZeile <> 35 And iZeile <> 36 And iZeile <> 37 _
And iZeile <> 38 Then
With cmbMaterial
.AddItem " "
.List(iComBox, 0) = Worksheets("Rechenwerte").Range("A" & iZeile).Value
.List(iComBox, 1) = Worksheets("Rechenwerte").Range("B" & iZeile).Value
iComBox = iComBox + 1
End With
End If
Next iZeile
End Sub

Weiss nicht mehr weiter.
Wilhelm
Bild

Betrifft: AW: Englische Excel Version
von: firmus

Geschrieben am: 22.12.2006 16:42:42
Hi Wilhelm,
ich habe den Code in mein englisches xls2003 geladen.
Allerdings war er nicht ausführbar.
Es "klemmt" an der fehlenden List/combo-box.
Kritisch könnte diese Zeile sein:
cmbMaterial.ColumnWidths = ("4,5 cm; 0,0 cm")
Warum:
Das Komma wird nicht als Dezimaltrennung erkannt (im englisch ist das der Punkt).
Damit enthalten Zellinhalte, die mit Konstanten "123,45" belegt werden im deutschen
Excel den Typ "numerisch" im englischen ist das Komma ein Char - und damit ist
der Feldtyp "Character".
Rechnungen sind damit u.U. nicht möglich.
Abfragen sind mit char-Logik, nicht mit num-logik zu betrachten.
Beispiel: Char "123,45" ist UNGLEICH num. 123,45
Wie ist der Typ erkennbar:
Wenn eine Zelle keine Ausrichtung hat (links, mittig, rechts) sind sie default,
d.h. DANN sind char-zellen links und num.zellen rechts am Rand.
Hoffe das hilft ein Stückchen weiter.
Falls nein, lade doch einfach eine xls hoch (mit wenig daten), die im deutschen xls
funktioniert, dann läßt sich das Problem besser nachvollziehen.
(Ich arbeite fast täglich auf englischen und deutschen Windows/xls/word).
Gruss,
Firmus
ps: bin in den nächsten Tagen nur sporadisch im Netz, why ;-)))
Bild

Betrifft: AW: Englische Excel Version
von: WilhelmR.
Geschrieben am: 22.12.2006 17:34:20
anbei Test.xls.
https://www.herber.de/bbs/user/39167.xls
ich hoffe du findest irgendwann mal Zeit.
Gruss
Wilhelm
Bild

Betrifft: AW: Englische Excel Version
von: firmus
Geschrieben am: 24.12.2006 08:59:43
Hallo Wilhelm,
erster Hinweis:
in Zelle A24 im Blatt Rechenwerte ist ein Link zu einer externen Datei.
Im Makro werden genau von dort Daten angezogen.
Gruß,
Firmus
Bild

Betrifft: AW: Englische Excel Version
von: WilhelmR.

Geschrieben am: 24.12.2006 11:57:02
Hallo firmus,
hat nix zu sagen, in der Originaldatei ist der Wert per kopieren und einfügen Werte eingefügt.
Ich habe nur die Urmutter gestrippt und da ist der Link wohl stehengeblieben.
Könnte ein Weg sein, dass es die cm Werte im Code sind, über die das englische Excel stolpert?
Ich habe jetzt einfach mal die Kommastellen entfernt.
Also aus 0,0 wird 0 cm und aus 4,5 wird 4 cm.
Es läuft bei mir klaglos, ich kann aber nicht kontrollieren ob es dies auch im Englischen tut.
weihnachtliche Grüsse
Wilhelm
 Bild
Excel-Beispiele zum Thema "Englische Excel Version"
In importierter Textdatei englische Werte in deutsche wandeln Makro in Abhängigkeit der Excel-Version verzweigen
Programmversion eines beliebigen Programms feststellen