Click here to Skip to main content
13,248,107 members (35,588 online)
Click here to Skip to main content
Add your own
alternative version


61 bookmarked
Posted 4 Jul 2007

RESX to XLS conversion for multi-language support

, 25 Jul 2007
Rate this:
Please Sign up or sign in to vote.
Easily convert your RESX projects files to Excel and back to localized RESX

Resx2Xls ScreenShot


Do you need to localize your RESX files and don't want to open them one file at a time, clean them of unused keys, localize them etc., etc.? Then Resx2Xls is for you.

  1. Open Resx2xls. Click on "Create new Excel document...," select your Project Root and follow the wizard. Done!!
  2. Fill your Excel file with your localized key values or just send it to your translator.
  3. Now, do you want to create the localized RESX files from the filled Excel workbook? Open Resx2xls, click on "Generate resx files...," select your Excel file, click Next and then click Finish. Done!!
  4. Have you updated your project after your resource files were modified/added/removed/updated? No problem. Open Resx2xls, click on "Update your Excel document...," click Next, select your Project Root and Excel document and click Finish. Done!!

Thanks go to Manish Ranjan Kumar and his WizardBase control. It has helped me to give the application a more decent style.


I was frustrated with copying my project resource files created in VS 2005, cleaning them of unused keys and then localizing them one file at a time. This tool should help you to just point and click at your project and obtain an Excel file filled with all of the strings of ALL of your resource files. After compiling the XLS with the translations, I wanted to convert all of the keys back into localized RESX files. I hope this helps!

Points of interest

I've had some problems loading resources with the ResxResourceReader class. I've noticed that if you have an image resource stored in the resource file, the path of the image in the XML document is relative to the document itself, not the project. Opening from another directory, i.e. Resx2xls bin, I get a "cannot parse" path exception. This was solved by setting the BasePath property of the resource reader with the path to the RESX file.


  • 25-7-2007: Article edited and posted to the main CodeProject article base
  • 5-7-2007: Added wizard
  • 4-7-2007: First release


This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


About the Author

Marco Roello
Web Developer
Italy Italy
No Biography provided

You may also be interested in...

Comments and Discussions

GeneralRe: Excellent work Pin
umurlu1-Dec-08 22:05
memberumurlu1-Dec-08 22:05 
GeneralCOMException: Old format or invalid type library Pin
marco vervoort10-Jul-07 22:18
membermarco vervoort10-Jul-07 22:18 
GeneralRe: COMException: Old format or invalid type library Pin
Kerdal17-Jul-07 8:18
memberKerdal17-Jul-07 8:18 
GeneralRe: COMException: Old format or invalid type library Pin
marco vervoort17-Jul-07 22:16
membermarco vervoort17-Jul-07 22:16 
Thanks, that solved the problem.
You've already written the code in file Resx2XlsForm.cs at line 32-34, but commented it out. After removing the comment tags, it worked.

Great tool Cool | :cool: . Nice to translate the resources. It still needs some tweaking before I can use it, but it's a good starting point. Currenlty you only load the default culture, altough I already have a localized resource which is not imported into Excel. And I get an OUT_OF_MEMORY from Excel at about 240 labels. I think I have about 800 labels in my resouce file. But these are thinks I can solve by my selve :->.

You haven't imported the comment from the resource file. The default resouce reader (ResXResourceReader) doesn't load the comments. I would suggest using an XmlReader with a few more lines of code. The comment can be very valueable for translations Sniff | :^) .

GeneralRe: COMException: Old format or invalid type library Pin
uswebpro218-Aug-08 3:09
memberuswebpro218-Aug-08 3:09 
Generalresource editor with multi language support Pin
edwin_vermeer10-Jul-07 3:39
memberedwin_vermeer10-Jul-07 3:39 
GeneralRe: resource editor with multi language support Pin
Marco Roello22-Jul-07 22:36
memberMarco Roello22-Jul-07 22:36 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.171114.1 | Last Updated 25 Jul 2007
Article Copyright 2007 by Marco Roello
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid