[三流君] −−> [VBAで楽しく] −−> [バックナンバー一覧]
−−> No.027 テキストファイル処理 ファイルへの書き込み

テキストファイル処理 ファイルへの書き込み

メルマガ発行内容

<テキストファイル処理 ファイルへの書き込み>

こんにちは、三流プログラマーKen3です。 今回は、 前回、FTPの処理でパラメータファイルをいきなり作成したけど、 解説まだだったので、 軽く書いてみます。 /* * 1. 開けて(Open)、書いて(Print #)、閉めて(Close) */ まずは、いつもの手抜きプログラムでテストを行うか、、 AltとF11を押して、エディター起動して、挿入の標準モジュールと、、 Sub test() Open "C:\TEST.TXT" For Output As #1 'ファイルを新規作成 'データ書き込み Print #1, "やっぱ三流だよね、固定はよくないよ" Print #1, "セミコロンを後ろに付けるとどうなるの?"; '←*セミコロン Print #1, "こうなるの" Print #1, "終わり" Close #1 '開いたら閉じようね End Sub と書いて、実行します。 C:\TEST.TXTに やっぱ三流だよね、固定はよくないよ セミコロンを後ろに付けるとどうなるの?こうなるの 終わり となります。 簡単に解説すると、 Open ステートメント Open "C:\TEST.TXT" For Output As #1 'ファイルを新規作成 Open ファイル名 For モード As ファイル番号 でファイルを作成できます。 モードは新規作成をしたいので、 Outputを使いました。 ほかに有名なのは、Append、Inputがあります。 *有名じゃなくって、処理によって使い分けます。 Print # ステートメント Print #1, "やっぱ三流だよね、固定はよくないよ" Print #1, 文字列や変数 で書き込みます。 あとのポイントは、;をつけると改行されないで次の項目を書き込めます。 Print #1, "セミコロンを後ろに付けるとどうなるの?"; '←* Print #1, "こうなるの" は、下記のような実行結果になります。 セミコロンを後ろに付けるとどうなるの?こうなるの と 書き込まれます。 Close ステートメント Close #1 '開いたら閉じようね で、ファイル番号1をクローズしています。 単純なパターンは、 開いて Print # ステートメント 書いて Open ステートメント 閉じて Close ステートメント です。 /* * 2.HTMLも拡張子が違うだけで普通のテキストファイル */ あんまり、変なテストプログラム書いてても、ツマラナイので、 HTMLファイルを作成して見ます。 HTMLファイルって行っても、 普通のファイルに<XXX>とタグ が付いてるだけなので、ご安心を。 Sub test2() Dim strFNAME As String 'ファイル名格納用 Dim strNAME As String '名前を入れる 'ユーザーに自分の名前を入れさせる strNAME = InputBox("アナタの名前は?", "名前の入力", "テスト") 'ブックと同じ位置にtest027.htmlを作成する strFNAME = ThisWorkbook.Path & "\test027.html" 'ファイル名の作成 Open strFNAME For Output As #1 'ファイル番号1で新規作成 'データ書き込み、 Print #1, "<html>" Print #1, "<b>" & strNAME & "</b>さんが<br>" Print #1, Now & "に作成したファイルです" Print #1, "</html>" Close #1 '開いたら閉じようね '終了メッセージの表示 MsgBox strFNAME & "を作成しました、確認してね" End Sub こんな感じです。 流れを軽く追って行くと、 まず、名前を入力させます(なんでもいいんだけど) 'ユーザーに自分の名前を入れさせる strNAME = InputBox("アナタの名前は?", "名前の入力", "テスト") ファイル名を作成後、開きます 'ブックと同じ位置にtest027.htmlを作成する strFNAME = ThisWorkbook.Path & "\test027.html" 'ファイル名の作成 Open strFNAME For Output As #1 'ファイル番号1で新規作成 ポイントは、 ThisWorkbook.Path & "\test027.html" で、実行中のブックのパスを付けてファイル名を作成してます。 それを利用して、ファイルを新規作成します。 次にデータを書きます。 'データ書き込み、 Print #1, "<html>" Print #1, "<b>" & strNAME & "</b>さんが<br>" Print #1, Now & "に作成したファイルです" Print #1, "</html>" 入力さた名前を出力、あとおまけで時間を書いてます。 処理が終わったらファイルを閉じます。 Close #1 '開いたら閉じようね そのまま終わってしまうと、なんだかわからないので、 ここにファイルを書いたんだよ、 と、ファイル名を表示しました。 '終了メッセージの表示 MsgBox strFNAME & "を作成しました、確認してね" 意外と簡単だったでしょ? /* * 3.終わりの挨拶 */ 今回は、 ・テキストファイルへの書き込み でした。 今回のサンプル、 http://www.ken3.org/vba/lzh/vba027.lzh に保存しました。 解凍してtest027-book.xlsを開いて、 内容を変えたりして、遊んでください。 テキストファイル処理も奥が深いけど、 まだ入り口なので余裕かなぁ。 拾い読みして、 1つでも何かの参考となれば幸いです。 Excel/Access大好き、三流プログラマーKen3でした。


ページフッター

ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、

種類別のリンク や 広告など

気になったジャンル↓を選択してください。

人気記事(来場者が多いTOP3):
[VBAでIE,WebBrowserを操作]・・・VBAでIE,WebBrowserを操作する サンプルです
[Access から Excel 連携 CreateObject("Excel.Application")]・・・AccessからExcelを操作したりデータの書き出しなどです
[VBAでOutlookの操作 CreateObject("Outlook.Application" )]・・・VBAからOutlookを使い、メール関係を処理するサンプルです
↑上記3つみたいなCreateObjectで他のアプリケーションを操作するサンプルが人気です。

Excel関係:
[Excel UserFormを操作する]・・・エクセルでユーザーフォームを作成して入力などを行ってます
[ExcelからAccessを操作する]・・・ExcelからAccessのマクロを起動してみました、
[Excel関係 関数、その他]・・・その他Excel関係です

Access関係:
[Access UserForm/サブフォーム 操作]・・・アクセスでフォームを使ったサンプルです
[Access レポート操作]・・・レポートを操作してみました
[Access クエリーやその他関数]・・・あまりまとまってませんが、スポット的な単体関数の解説です

その他:VBAの共通関数やテキストファイルの操作など
[VBAでテキストファイル(TextFile)の操作]・・・普通のテキストファイルを使ったサンプルです
[VBA 標準関数関係とその他解説]・・・その他、グダグタ解説してます

開発時の操作: [F1を押してHELPを見る]/ [Debug.Print と イミディエイトウインドウ]/ [実行時エラーでデバッグ]/ [ウォッチ式とSTOP]/ [参照設定を行う]

仕様書(設計書?) XXXX書類: [基本設計書や要求仕様書]/ [テスト仕様書 テストデータ]/ [バグ票]/ [関数仕様書]/ [流れは 入力・処理・出力]

※↑文章の味付けが変わっていて、お口に合うかわかりませんが。。。
※※読んで、気分を悪くされたらスミマセン。

Blogとリンク:[三流君の作業日記]/ [VBAやASPのサンプルコード]/ 広告-[通販人気商品の足跡]



[三流君(TOP ken3.org へ戻る)] / [VBA系TOPへ] / [VBA系バックナンバー目次へ移動]