タイトルの通りです。
簡単なプログラムを作ってみました。
このような事は出来ないのでしょうか。
教えてください。
宜しくお願いします。
☆サンプルプログラム☆
↓
Sub test()
Dim Stm As Object
Dim sText As String
Const adCRLF = -1
Const adReadAll = -1
Const adTypeText = 1
sText = "あああ"
Set Stm = CreateObject("ADODB.Stream")
Stm.Open
Stm.Charset = "UTF-8"
Stm.WriteText sText
ActiveSheet.Range("A1").Value = Stm.ReadText()
Stm.Close
Set Stm = Nothing
End Sub
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは。
KenKen_SP です。UTF-8 で書かれたテキストファイルの文字列を読み込んでコードを
試してみましたが、そのまま動きましたね、、意図は何ですか?
Excel2000 以上なら Unicode 対応してますので、Excel内部でのみの
処理なら特に問題はないと思います。理由があって別のキャラセット
に変換するならもう一つ ADOBE.Stream を CreateObject し、そちら
の Charset を変換したいキャラセットに設定してから、WriteText
するなり、CopyTo すればいいです。
こんな感じ。
Sub CONVERT_CHARSET()
'参照設定するなら:Microsoft ActiveX Data Objects x.x Library
Dim SRC As Object
Dim DST As Object
Dim strFILEPATH As String
Const adTypeText = 2
strFILEPATH = Application.GetOpenFilename("TEXTファイル (*.txt), *.txt")
If UCase$(strFILEPATH) = "FALSE" Then Exit Sub
Set SRC = CreateObject("ADODB.Stream")
With SRC
.Open
.Charset = "UTF-8"
.Type = adTypeText
.LoadFromFile strFILEPATH
.Position = 0
End With
Set DST = CreateObject("ADODB.Stream")
With DST
.Open
.Charset = "Shift_JIS"
.Type = adTypeText
End With
SRC.CopyTo DST
DST.Position = 0
ActiveSheet.Range("A1").Value = DST.ReadText()
SRC.Close
DST.Close
Set SRC = Nothing
Set DST = Nothing
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) VBA処理追加 こちらでご教示頂いたのですが回答完了させてしまいましたのでこちらからまた質問させてく 2 2022/10/27 09:57
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) エクセルVBAのコードで質問です。 下のコードはJ16の文字列をB3を起点とする範囲から探して、見つ 5 2023/04/07 11:07
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
家電製品の電力周波数を変える機械
-
C++からCへのソース変換について
-
Mac 乗数の入力方法
-
はしごの高をマックで表示する...
-
VB.NETとVB6.0でAPIを使う場...
-
SJIS⇔UTF-8の文字コード...
-
VBAを使って二進法計算
-
XMLからCSV変換について
-
OpenCVで画像をある角度から見...
-
tex 郵便記号のだしかた
-
C++を使った汎用性のあるXML変...
-
gnuplotをC言語で操作する方法
-
機械語からアセンブリ言語への...
-
木構造の前置形と行きがけ順に...
-
配列 反時計回り90ど回転
-
色の変換
-
緯度、経度の 10進法と 60進法...
-
エクセルのvbaで検索ボタンを作る
-
内部文字コードとは?
-
VS2012でOnInitDialogが2回呼出し
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
緯度、経度の 10進法と 60進法...
-
Mac 乗数の入力方法
-
3のつく数字と3の倍数のみを表...
-
10進数をBCDに変換する方法
-
bmp→jpgに、jpg→bmpに
-
エクセルVBAの自動変換機能?
-
アセンブラ言語の数字を数値に...
-
なぜ通信には16進数文字列が使...
-
SJIS⇔UTF-8の文字コード...
-
C++からCへのソース変換について
-
分を時間に変換するプログラム
-
UTF8→ShiftJISに変換したいです!
-
家電製品の電力周波数を変える機械
-
マンセル⇔XYZ,RGB変換式或いは...
-
VB.NETをJavaに変換するツール...
-
画像ファイル変換(Tiff→PDF)
-
PHPで、日本語からアルファベッ...
-
魚眼レンズの画像処理
-
C#で漢字→ローマ字を変換
-
StrConvの使い方について教えて...
おすすめ情報