tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルファイルに保存
記事No948
投稿日: 2004/06/29(Tue) 11:35
投稿者けい
[OSのVer]:Windows XP   [VBのVer]:VB.NET 2003

VB初心者の私に教えてください
エクセルを呼び出してファイル保存をする時に、ファイル形式をテキスト型に変更して保存を
行うと、文字化けして保存されるのですが何か原因でもあるのでしょうか?

[ツリー表示へ]
タイトルRe: ファイルに保存
記事No949
投稿日: 2004/06/29(Tue) 14:55
投稿者ファリンファリン
> エクセルを呼び出してファイル保存をする時に
もちろんExcelクラスを使っているんですよね?

> 文字化けして保存されるのですが何か原因でもあるのでしょうか?
エンコードの問題じゃないですか?
System.Text.Encodingクラスを参照して見てください。

エクセルの内容をテキストで保存したいのであれば、保存するときはExcelクラスを
使うのではなくて、Fileクラス等を使ったほうがいいと思いますが・・・
不都合があったりしますか?

[ツリー表示へ]
タイトルRe: ファイルに保存
記事No951
投稿日: 2004/06/29(Tue) 16:46
投稿者花ちゃん
保存したファイルをメモ帳で開いた時すでに文字化けしているのでしたら
保存時に FileFormat を設定していますか? ファイル名の拡張子を TXT にした
だけではありませんか?
VB6.0なら下記でOKですが .NET は定数が違うので調べて変更して下さい。
xlSheet.SaveAs "c:\Test.txt", FileFormat:=xlUnicodeText

.NET で試してみたら下記のようです。
xlSheet.SaveAs("c:\test.txt", Excel.XlFileFormat.xlUnicodeText)

[ツリー表示へ]
タイトルRe^2: ファイルに保存
記事No952
投稿日: 2004/06/29(Tue) 17:08
投稿者けい
[OSのVer]:Windows    [VBのVer]:VB.NET  
> 保存したファイルをメモ帳で開いた時すでに文字化けしているのでしたら
> 保存時に FileFormat を設定していますか? ファイル名の拡張子を TXT にした
> だけではありませんか?
> VB6.0なら下記でOKですが .NET は定数が違うので調べて変更して下さい。
> xlSheet.SaveAs "c:\Test.txt", FileFormat:=xlUnicodeText
>
> .NET で試してみたら下記のようです。
> xlSheet.SaveAs("c:\test.txt", Excel.XlFileFormat.xlUnicodeText)

解決しました。

ただ単純に、.txtだけ指定していたため文字化けをしたみたいです。
.xls(エクセル)形式で保存したらうまくいったので、開いたアプリケーションと同じ拡張子を
つけないと文字化けが起きるものかと考えていました(^^;)
ファリンファリンさん、花ちゃんさん、どうもありがとうございました!!

[ツリー表示へ]