バイナリファイルをエクセルファイルに変換するには?


VB初心者  2004-05-21 15:48:06  No: 83475

いつも拝見させていただいています。
バイナリファイルからエクセルファイルに変換し、
また、エクセルファイルをバイナリファイルに変換するツールを作っています。

バイナリファイルからエクセルファイル(S-JIS)に変換するコードを作ってみましたけど、エラーが出ます。
どなたかお知恵をお貸し下さい。
ADODB.Streamについても教えていただきたいです。
環境はVB6.0(SP5)です。
参考コード
 Dim intFileNumber As Integer
 Dim lngFileSize As Long
 Dim bytArray() As Byte
Const adTypeBinary = 1
Const adTypeText = 2
Dim St As Object
Set St = CreateObject("ADODB.Stream")
St.Open

intFileNumber = FreeFile
Open "C:\A.Dat" For Binary As #intFileNumber 
    lngFileSize = LOF(intFileNumber)
    If lngFileSize Then
        ReDim bytArray(lngFileSize - 1)
        Get #1, , bytArray
    End If
    Close #intFileNumber
St.Write bytArray          ←エラー3129:このコンテキストで操作は許可されていません。

'Shift_JISの文字列として得る
Dim S1 As String
St.Position = 0
St.Type = adTypeText
St.Charset = "Shift_JIS"
S1 = St.ReadText()
MsgBox S1, , "Shift_JIS"

St.Close
Set St = Nothing

End Sub


VB初心者  2004-05-21 16:12:02  No: 83476

先ほどのコードには
St.Type = adTypeBinary
が抜けていましたので、エラーが出ました。
でも、S-JISには変換されていないみたいです(文字化けします)。
なにか方法ありますか?


※作成する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。







   このエントリーをはてなブックマークに追加