Results 1 to 7 of 7
  1. #1
    5 Star Lounger jujuraf's Avatar
    Join Date
    Jun 2001
    Location
    San Jose, California, USA
    Posts
    1,061
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Internationalize Excel VBA (Excel 97 and 2000)

    I recently released an Excel workbook after a lot of testing and now one of the European users are saying that they get run-time errors! <img src=/S/scream.gif border=0 alt=scream width=15 height=15> I do not know the message they saw as it's second hand knowledge. Quite a few people here (US) have run it in xl97 and xl2000 with diferent service packs and haven't report problems. Is there some list of How-To's when developing for foreign markets that I obviously missed? The model does not use anything but the built-in references (VBA, Office, etc.) so I know it can't be that. It's impossible to duplicate and fix the error if I can't see it here.

    Thnx, Deb <img src=/S/crybaby.gif border=0 alt=crybaby width=15 height=15>

  2. #2
    Gold Lounger
    Join Date
    Feb 2001
    Location
    Sint Niklaas, Belgium
    Posts
    2,778
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Re: Internationalize Excel VBA (Excel 97 and 2000)

    Deb,

    KB article OFF97: Differences Between U.S. and International English Office (Q181597) says:
    Number formats, date formats, time formats, and measurements are based on system regional settings.

    Do your code manipulate such things?
    If you want you can send me the workbook and I test it on my system with Belgium settings to see if I can reproduce the errors. I have Excell 97 and 2000.
    Francois

  3. #3
    Silver Lounger
    Join Date
    Mar 2001
    Location
    Springfield, Ohio, USA
    Posts
    2,136
    Thanks
    0
    Thanked 1 Time in 1 Post

    Re: Internationalize Excel VBA (Excel 97 and 2000)

    Deb, John Green's Book, Excel 2000 VBA Programmers Reference, has an entire chapter written by Stephen Bullen that discusses international issues. There also are different object libraries that you may need, see <A target="_blank" HREF=http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q140629&ID=KB;EN-US>Q140629</A> . Unfortunately, it appears to me that VBA is very fragile on international issues. It's a big help to have people like Francois do some quick checks for you.
    <font face="Comic Sans MS">Sam Barrett, CACI </font face=comic>
    <small>And the things that you have heard... commit these to faithful men who will be able to teach others also. 2 Timothy 2:2</small>

  4. #4
    5 Star Lounger jujuraf's Avatar
    Join Date
    Jun 2001
    Location
    San Jose, California, USA
    Posts
    1,061
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Re: Internationalize Excel VBA (Excel 97 and 2000)

    Great info, I'll check it all out. I also have the John Green book some on else suggested and have read J.Walkenbach's book for info on this subject. I may also take you up on the offer to run my program on your non-English system. <img src=/S/joy.gif border=0 alt=joy width=23 height=23> I'll first have to remove some company info so you won't know what it's for other than seeing numbers. I spent a little bit of time using the Application.International() method and added the currency character and the thousands character to my code since I do force formatting on certain cells.

    I'll get back to you again earlier next week when I can send you a simplified version of the workbook for testing. These programs are small (less than 500KB). I have the MSDN Universal Subscription so I might install some of the foreign versions to test. Developing apps that work the same in xl97 and xl2000 is diffcult enough but now I have to deal with International incompabiities too! I think I preferred my previous life as C++ programmer... much simpler in that once it's a .exe file there aren't the kind of undocumented incompatibilities to worry about.

    Deb <img src=/S/clapping.gif border=0 alt=clapping width=19 height=23>

  5. #5
    Plutonium Lounger
    Join Date
    Nov 2001
    Posts
    10,550
    Thanks
    0
    Thanked 7 Times in 7 Posts

    Re: Internationalize Excel VBA (Excel 97 and 2000)

    The one that always breaks my VBA code is Right-to-Left languages. If you're going to be shipping your code to a world wide audience then you need to test using using one of these.

    StuartR

  6. #6
    5 Star Lounger jujuraf's Avatar
    Join Date
    Jun 2001
    Location
    San Jose, California, USA
    Posts
    1,061
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Re: Internationalize Excel VBA (Excel 97 and 2000)

    Can I just change my Regional Settings from Control Panel to test my program? I see the changing $ to the English pound does show up when I run Application.International(xlCurrencyCode) which of course makes sense that it would <img src=/S/doh.gif border=0 alt=doh width=15 height=15>. I do not have to worry about non-English languages just conventions for formats in cells (Excel 97 and 2000 is my audience). Since I don't know exactly what failed for my French user, I can only guess that it was my cell formatting which I do in VBA under some conditions. I need to go through the code again and look for other areas that might fail. Right now my audience is just our own employees world-wide so they all have the English Office programs but of course use their own regional settings.

    With all the variations in versions of Excel there is no way anyone can make a program that works for all.

    Thnx, Deb <img src=/S/bagged.gif border=0 alt=bagged width=22 height=22>

  7. #7
    Gold Lounger
    Join Date
    Feb 2001
    Location
    Sint Niklaas, Belgium
    Posts
    2,778
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Re: Internationalize Excel VBA (Excel 97 and 2000)

    I don't know about the currency symbol, but here in belgium (and in france) we use the comma for decimal separator and the dot for the thousand separator.
    An issue that I have trouble with (in Access) was the date format. We use dd/mm/yy instaed of mm/dd/yy. I remember that in some cases when we enter 01/02/99 for 1st of Feb and VBA interpreted it as 2nd of Jan. To make it worse, when we entered 25/02/99 VBA understand it as 25st of feb with the same code.
    BTW my versions of office are Englisch International, wich is not the same version of the US. This may also be the version of your world-wide employees. If necessary I can do the tests on the pc of my sister who's working with an Office 2000 Dutch version.
    Francois

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •