<Excel 範囲を選択して、カンマ区切りのファイルを作る>
どうも、三流プログラマーのKen3です。 今回は、 Excelで範囲を選択して、カンマ区切りのファイルを作ってみたいと思います。 たいした内容じゃないのですが。 http://www.ken3.org/p/f/lzh/office-019.lzh に今回のサンプル保存されてます。 あわせてみてください。/* * 1.プログラムは流用と新機能の作成? */
Excel範囲をHTMLのテキストファイルにするプログラムを作成ました。 詳細は、 http://www.ken3.org/backno/backno_vba17.html の [No.80 Excelのセル範囲をHTMLの表(.html)にしてみる] [No.81 セルの右寄せ、中央寄せをHTMLの表にしてみる] [No.82 背景色、フォントカラーをHTMLの表にしてみる] [No.83 改行LFを<BR>などHtml用にエンコードして書き込む] を見てください。 なんていつもの過去マガの宣伝は置いといて、 今回は、HTML部分をCSVの出力に変えて、作ってみたいと思います。 まずは、流用して、工夫も無しに出力してみました。
Sub Main() 'Application.InputBoxでセルを選択させる Dim objTARGET As Range '選択されたセルの集合 Set objTARGET = Application.InputBox(prompt:="セルを選択", Type:=8) If IsEmpty(objTARGET) Then 'キャンセルが押されたかチェックする MsgBox "キャンセルが押されました" Exit Sub End If 'ファイル名を作成 ファイル名は自分のパス+\test.html Dim strFNAME As String 'ファイル名保存用 strFNAME = ThisWorkbook.Path & "\test.csv" 'ファイル名を作る 'テーブルデータを作成する Call MAKE_CSV_FILE(strFNAME, objTARGET) 'できたファイルをメモ帳で表示して確認する Shell "notepad.exe " & strFNAME '手抜きでShellで起動 '終わりの挨拶 MsgBox strFNAME & "を作成しました" End Sub |
Sub MAKE_CSV_FILE(strFNAME As String, objHANI As Range) 'ファイルをオープンする Dim FNO As Integer 'ファイル番号 FNO = FreeFile '空いてるファイル番号を取出す Open strFNAME For Output As #FNO 'テキストファイルを新規作成 '行、列でループを作る Dim y As Integer Dim x As Integer For y = 1 To objHANI.Rows.Count '行のループ For x = 1 To objHANI.Columns.Count '列のループ Print #FNO, objHANI.Cells(y, x).Value; Print #FNO, ","; Next x Print #FNO, "" '改行のみ出力 Next y 'ファイルをクローズする Close #FNO End Sub |
Sub MAKE_CSV_FILE(strFNAME As String, objHANI As Range) 'ファイルをオープンする Dim FNO As Integer 'ファイル番号 FNO = FreeFile '空いてるファイル番号を取出す Open strFNAME For Output As #FNO 'テキストファイルを新規作成 '行、列でループを作る Dim y As Integer Dim x As Integer For y = 1 To objHANI.Rows.Count '行のループ Print #FNO, objHANI.Cells(y, 1).Value; '先頭項目の出力 For x = 2 To objHANI.Columns.Count '列のループ Print #FNO, ","; Print #FNO, objHANI.Cells(y, x).Value; Next x Print #FNO, "" '改行のみ出力 Next y 'ファイルをクローズする Close #FNO End Sub |
ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、
気になったジャンル↓を選択してください。 人気記事(来場者が多いTOP3): Excel関係: Access関係: その他:VBAの共通関数やテキストファイルの操作など 開発時の操作: [F1を押してHELPを見る]/ [Debug.Print と イミディエイトウインドウ]/ [実行時エラーでデバッグ]/ [ウォッチ式とSTOP]/ [参照設定を行う] 仕様書(設計書?) XXXX書類: [基本設計書や要求仕様書]/ [テスト仕様書 テストデータ]/ [バグ票]/ [関数仕様書]/ [流れは 入力・処理・出力] ※↑文章の味付けが変わっていて、お口に合うかわかりませんが。。。 |
Blogとリンク:[三流君の作業日記]/
[VBAやASPのサンプルコード]/
広告-[通販人気商品の足跡]