Unicode characters problem in MailMerge using Excel

D

dhwanitdesai

Hey...

I'm having problem displaying double-byte characters using mail merge
functionality. In my application, we're using Excel sheet as a
datasource for a word template document. We open a datasource using
OpenDatasource method. But when spreadsheet column has a double-byte
characters in its data, in Word document, when we merge the field, it
displays lots of "?" instead.

Data is being displayed fine in spreadsheet.

Also, when I manually open a datasource from a word for the same
spreadsheet and then merge fields, data is perfect. It doesn't display
garbages....

Any ideas/suggestions is appreciated.

Thanks,
- Dhwanit
 
P

Peter Jamieson

Which version of Word/Excel, and can you show the code for your
OpenDataSource please?

Peter Jamieson
 
D

dhwanitdesai

Which version of Word/Excel, and can you show the code for your
OpenDataSource please?











- Show quoted text -

Hey....We're using office 2003 SP2 for word and excel both...as far
as code goes, call is right here...

ODBC:

m_doc.MailMerge.OpenDataSource(Name:="", _
Connection:="DSN=Excel Files;DBQ=" &
m_strDsName & ";", _
SQLStatement:="SELECT * FROM `Sheet1$`", _
SubType:=WdMergeSubType.wdMergeSubTypeWord2000)

DDE:
m_doc.MailMerge.OpenDataSource( _
Name:=m_strDsName, _
Connection:="Entire Spreadsheet", _

SubType:=WdMergeSubType.wdMergeSubTypeWord2000)

Thanks....
Dhwanit
 
P

Peter Jamieson

Unless you really are dealing with "older-style" double-byte characters, the
problem is that neither ODBC nor DDE will preserve Unicode characters (which
I know is not necessarily the same thing, but is likely to be what needs to
come across regardless of what encoding you think you are using. You really
have to use OLE DB (the default connection method in Word 2003) to do that -
I would suggest:

OLEDB:

m_doc.MailMerge.OpenDataSource(Name:=m_strDsName, _
Connection:="", _
SQLStatement:="SELECT * FROM `Sheet1$`"

Although I don't hink it has any particular bearing on this issue, you might
also find some of http://tips.pjmsn.me.uk/t0003.htm useful

Peter Jamieson
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top