どもです。この間の質問の続きです。VB6.0 SP5
open の保存で文字の区切りに " , が使われるために
text1 text2 text3 にそれぞれ文字を入れて保存してもその文字へ " ,等を使っている場合そこで区切られてしまい、text1に=あいう"えお と入力して保存⇒読み込みをするというtext1=あいう text2=えおと区切られてします問題でした。
そこでかなり考えてすこし良い案が浮かびました。
がコードが浮かびません^^;
これをコードに変えられる方お願いします。
a = text1.text ←「あいうえお」と打ち込む。
b = text2.text ←「かきくけこ」と打ち込む。
c = text3.text ←「さしすせそ」と打ち込む。
open "test.txt" for output as #1
print #1,a & "<tes>" & b & " <tes> " & c
で保存すると
あいうえお<tes>かきくけこ<tes>さしすせそ
と保存される訳です。
※次に開きます。
open test.txt" for input as #1
この読み込みが判らないんですが、<tes>の
場所でそれぞれa b cに分けるようにすればいいと
思ったんです。
出来ますか@@???
No.1
- 回答日時:
こんにちは。
maruru01です。Split関数を使用すればいいと思います。
Dim temp As Variant
Dim i As Long
temp = Split("あいうえお<res>かきくけこ<res>さしすせそ", "<res>")
For i = 0 To UBound(temp)
Debug.Print temp(i)
Next i
この回答への補足
どもです。
variant型のせいか
text1.text = tempの感じでやると
型が一致しません。と出ます。
textに表示したいのですが方法はありますでしょうか?
No.2
- 回答日時:
Split関数のDelimiterに<tes>を指定とか。
Binaryモードで読み込む必要はあるでしょうけど。
参考URL:http://www.microsoft.com/japan/msdn/library/ja/v …
No.3
- 回答日時:
まず、1行まるごと読み込みますな。
Input #1,Buffer
だと、カンマなどがあると、そこで切れてしまうので、
Line Input #1,Buffer
の方が良いと思いまする。
で、Split関数です。
Temp = Split(Buffer,"<res>")
続けて書くと、
Dim Buffer As Variant,Temp As Variant
Open "test.txt" For Input As #1
Line Input #1,Buffer
Temp = Split(Buffer,"<res>")
Close #1
で、配列Tempにお望みのデータが入るはずです。
この回答への補足
でもです!希望通りtempには入ったようですが
variant型のせいか
text1.text = tempの感じでやると
型が一致しません。と出ます。
text1.textにそのtempを表示したいのですが方法はありますでしょうか?
StringだとエラーなりますしT_T;
No.4
- 回答日時:
#3です。
>text1.text = tempの感じでやると
textプロパティには、配列は代入できないんじゃないかな?
variant型のせいではないと思いますよ。
配列を改行コードを挟んでつなげると、マルチライン表示になりますが……。
No.5
- 回答日時:
保存のときに1データ1行ではだめですか?
Printで保存するときに末尾に「;」を付けなければ、データの行末にCR+LFが付くと思います。
読むときはLine Inputで「文字変数」に(Dim a As Stringなどと定義)読み込みます。
二重引用符やカンマを含むデータの場合、保存時に工夫できないときは、私は、Instr()を組合わせて、人間が見たときと同じようなロジックを組んでいます。
あと、このような場合、Tab(Chr(9)コード)区切りにしておくと、汎用性と確実性があると思います。
では!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- PHP 文字列を段落で分ける方法を教えて下さい。 2 2023/03/09 10:03
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/21 13:29
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- JavaScript Javascriptを使ってQRコード読み取り、取得した情報をPOSTしたいと思っています。 1 2023/04/28 15:18
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/02/21 11:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
perlによるxmlファイルの取得
-
sublimit textっていうエディタ...
-
【VBS】クリップボード操作につ...
-
助けてください!
-
Pythonでのstrip()とsplit()の...
-
Rubyにおける正規表現(一致し...
-
PHP GDでテキストを含む最小の...
-
他のフォームから別のフォーム...
-
エクセルVBAでテキストボッ...
-
【VB6.0】 あるフォームから他...
-
タイムアウトする仕組みを作りたい
-
C#のループでtextboxに値を入れ...
-
三項でたとえば交換って
-
C言語のサフィックスについて
-
VS CodeでTEXファイルにPDF形式...
-
pthread_cond_waitとptherad_co...
-
二点の座標から距離や角度を求...
-
【VB.NET】テキストボックスに...
-
VB.NETでのイベントの途中終了
-
VB6のFriendについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
sublimit textっていうエディタ...
-
ExcelのVBAで文章にある複数の...
-
テキストボックスかラベル上の...
-
【VBS】クリップボード操作につ...
-
RichTextBoxで指定行の色を自動...
-
vba 日本語以外を抽出について
-
文字列を配列に…。
-
Pythonのre.split()の正規表現...
-
VBスクリプトでファイルのコピ...
-
文字列を日付型情報として計算...
-
VB6.0 sp5]テキストボックスと...
-
XMLファイルのattribute値がう...
-
VBScript、ClipboardDataオブジ...
-
助けてください!
-
Googleシート「A1」でなくて「A...
-
HTMLのデータ読み取り
-
Visual Basicについてお聞きし...
-
[VB6] SQLの作成について
-
perlによるxmlファイルの取得
-
表の文字の均等割りについて
おすすめ情報