![]() |
Table ranges do not work in multilingual configurations
Excel 2007 table ranges do not work in multilingual configurations. The
solution I am developing involves external data, however, I managed to isolate the problem so that it can be reproduced in a few easy steps: 1- Create an empty workbook. 2- Compose a simple table, for example monthly sales. [A1]: Month, [B1]: Sales [A2]: Jan, [B2]: 10 [A3]: Feb, [B3]: 10 3- Select the whole table, click "format as a table". 4- Insert a pivot table to the same sheet, select the table you just created as the data source, the reference should be Table1[#All]. 5- Save the workbook, close Excel. 6- Change the UI to another language, reopen the workbook, try to refresh the pivot table, you will get an error message. The reason is that Table1[#All] works only on English systems. The keyword #All is different for each language. If you write a formula like SUM(A1:A9) on an English system, it automatically becomes SOMME(A1:A9) on a French system, neither the developer nor the user has anything special to do. One would expect the same behavior for the keyword #All, however, that's not the case, it fails. Am I missing something, or is it a bug? Sincerely. Elyo Ravuna |
Table ranges do not work in multilingual configurations
Hello Elyo,
From your post, my understanding on this issue is: you wonder how to make a pivot table compatible with all language versions of Office 2007. If I'm off base, please feel free to let me know. I reproduced the issue by following your steps. In Office 2007 with French Language Pack, it would expect " [#Tout]" rather than " [#All]". As you said, the difference of the keyword [#All] makes the error. I am now consulting Excel Product team, to see if there is a method to make a pivot table compatible with different Office Language Packs. I will get back to you as soon as possible. Actually, almost all the other Office application have similar strings that change between languages. The overall recommendation would be to stay away from these strings and use ID to access the objects. For example, in the English version of Excel, you have Sheet1, Sheet2, etc. in German they are named Tabelle1, Tabelle2, etc. If you use something like Sheets("Sheet1") in combination with the German version, it will fail. But we could use Sheets(1) to avoid the problem. I need to consult Excel product team to see if there is a similar workaround for it in Pivot Table. Sincerely, Jialiang Ge , remove 'online.') Microsoft Online Community Support ================================================== For MSDN subscribers whose posts are left unanswered, please check this document: http://blogs.msdn.com/msdnts/pages/postingAlias.aspx Get notification to my posts through email? Please refer to http://msdn.microsoft.com/subscripti...ult.aspx#notif ications. If you are using Outlook Express/Windows Mail, please make sure you clear the check box "Tools/Options/Read: Get 300 headers at a time" to see your reply promptly. Note: The MSDN Managed Newsgroup support offering is for non-urgent issues where an initial response from the community or a Microsoft Support Engineer within 1 business day is acceptable. Please note that each follow up response may take approximately 2 business days as the support professional working with you may need further investigation to reach the most efficient resolution. The offering is not appropriate for situations that require urgent, real-time or phone-based interactions or complex project analysis and dump analysis issues. Issues of this nature are best handled working with a dedicated Microsoft Support Engineer by contacting Microsoft Customer Support Services (CSS) at http://msdn.microsoft.com/subscripti...t/default.aspx. ================================================== This posting is provided "AS IS" with no warranties, and confers no rights. |
Table ranges do not work in multilingual configurations
Dear Jialiang,
Thank you for your prompt response. You have understood the problem correctly, however the analogy with Sheet1/Tabelle1 does not apply to my case. The problem with the keyword #All is very special and unique. When you create a workbook in the German version of Microsoft Office, the default ID of the first sheet is "Tabelle1". You could as well choose an ID manually, Tabelle1 is just a default value. Let's suppose you don't change the default value: If you open the workbook in another UI language, you can still refer to it as Sheets("Tabelle1"). Thus, there isn't any problem with the keywords Tabelle1/Sheet1. To reproduce this behavior: 1- Create an Excel workbook in the German version of Microsoft Office. 2- Write the following code: Private Sub Workbook_Open() ThisWorkbook.Sheets("Tabelle1").Cells(1, 1) = "test" End Sub 3- Close Excel, switch the UI to English, reopen the same workbook, the VBA code will work flawlessly. That's not the case with the keyword #All. You can think of "Table1[#All]" as the ID of the table. Thus, it is as if the ID of the table changes when the user switches the UI language. I would be very glad if you could find a workaround for it in Pivot Tables. Sincerely. Elyo Ravuna "Jialiang Ge [MSFT]" wrote: Hello Elyo, From your post, my understanding on this issue is: you wonder how to make a pivot table compatible with all language versions of Office 2007. If I'm off base, please feel free to let me know. I reproduced the issue by following your steps. In Office 2007 with French Language Pack, it would expect " [#Tout]" rather than " [#All]". As you said, the difference of the keyword [#All] makes the error. I am now consulting Excel Product team, to see if there is a method to make a pivot table compatible with different Office Language Packs. I will get back to you as soon as possible. Actually, almost all the other Office application have similar strings that change between languages. The overall recommendation would be to stay away from these strings and use ID to access the objects. For example, in the English version of Excel, you have Sheet1, Sheet2, etc. in German they are named Tabelle1, Tabelle2, etc. If you use something like Sheets("Sheet1") in combination with the German version, it will fail. But we could use Sheets(1) to avoid the problem. I need to consult Excel product team to see if there is a similar workaround for it in Pivot Table. Sincerely, Jialiang Ge , remove 'online.') Microsoft Online Community Support ================================================== For MSDN subscribers whose posts are left unanswered, please check this document: http://blogs.msdn.com/msdnts/pages/postingAlias.aspx Get notification to my posts through email? Please refer to http://msdn.microsoft.com/subscripti...ult.aspx#notif ications. If you are using Outlook Express/Windows Mail, please make sure you clear the check box "Tools/Options/Read: Get 300 headers at a time" to see your reply promptly. Note: The MSDN Managed Newsgroup support offering is for non-urgent issues where an initial response from the community or a Microsoft Support Engineer within 1 business day is acceptable. Please note that each follow up response may take approximately 2 business days as the support professional working with you may need further investigation to reach the most efficient resolution. The offering is not appropriate for situations that require urgent, real-time or phone-based interactions or complex project analysis and dump analysis issues. Issues of this nature are best handled working with a dedicated Microsoft Support Engineer by contacting Microsoft Customer Support Services (CSS) at http://msdn.microsoft.com/subscripti...t/default.aspx. ================================================== This posting is provided "AS IS" with no warranties, and confers no rights. |
Table ranges do not work in multilingual configurations
Hello Elyo,
Thank you for your patience. According to the response of Excel product team, "=Table1" should be the same as "=Table1[#All]". Likewise to use an entire column just =Table1[Column1] should be sufficient. This avoids using keyword [#All] which should solve the problem. Here is my test steps: 1. Create an empty workbook. 2. Compose a simple table: [A1]: Month, [B1]: Sales [A2]: Jan, [B2]: 10 [A3]: Feb, [B3]: 10 3. Select the whole table, and format the table. 4. Insert a pivot table to the same sheet, select the table we just created, the reference should be Table1[#All]. 5. *change the reference as Table1* 6. Save the workbook, close Excel 7. Change the UI to French, reopen the workbook and refresh the pivot table. Please try it on your side and let me know if it works. If you need further assistance, feel free to let me know. I will be more than happy to be of assistance. Have a great day! Sincerely, Jialiang Ge , remove 'online.') Microsoft Online Community Support ================================================= When responding to posts, please "Reply to Group" via your newsreader so that others may learn and benefit from your issue. ================================================= This posting is provided "AS IS" with no warranties, and confers no rights. |
Table ranges do not work in multilingual configurations
Dear Jialiang,
This workaround works perfectly. Thanks a lot! Sincerely, Elyo Ravuna "Jialiang Ge [MSFT]" wrote: Hello Elyo, Thank you for your patience. According to the response of Excel product team, "=Table1" should be the same as "=Table1[#All]". Likewise to use an entire column just =Table1[Column1] should be sufficient. This avoids using keyword [#All] which should solve the problem. Here is my test steps: 1. Create an empty workbook. 2. Compose a simple table: [A1]: Month, [B1]: Sales [A2]: Jan, [B2]: 10 [A3]: Feb, [B3]: 10 3. Select the whole table, and format the table. 4. Insert a pivot table to the same sheet, select the table we just created, the reference should be Table1[#All]. 5. *change the reference as Table1* 6. Save the workbook, close Excel 7. Change the UI to French, reopen the workbook and refresh the pivot table. Please try it on your side and let me know if it works. If you need further assistance, feel free to let me know. I will be more than happy to be of assistance. Have a great day! Sincerely, Jialiang Ge , remove 'online.') Microsoft Online Community Support ================================================= When responding to posts, please "Reply to Group" via your newsreader so that others may learn and benefit from your issue. ================================================= This posting is provided "AS IS" with no warranties, and confers no rights. |
All times are GMT +1. The time now is 06:08 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com