- ベストアンサー
軽いデータで出力
初心者です。 Excel2000で決まったテンプレートを使用しています。 必要な情報のみ残したいので A1のセルとA5~F100までの情報のみ テキストなどの軽いデータで出力したいです (区切りはいりません) コマンドボタンでファイル名を入力して 出力する形がいいのですが出来ますか? 勝手を言って申し訳ないのですが 出来ればマクロの記述をご教授願います。
- mama_mari
- お礼率57% (11/19)
- Visual Basic
- 回答数2
- ありがとう数2
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんな感じ 'A1,A5:F100を出力 Private Sub CommandButton1_Click() Dim fso, file, filename Dim x As Range, line, i filename = InputBox("出力ファイル名入力", "ファイル名入力") Set fso = CreateObject("Scripting.FileSystemObject") Set file = fso.OpenTextFile(ThisWorkbook.Path & "\" & filename, 2, True) 'ファイルが既に在る時上書 file.WriteLine Range("A1").Value For Each x In Range("A5:A100") line = "" For i = 0 To 5 'A~Fまでをつなぐ line = line & x.Offset(0, i).Value Next file.WriteLine line Next file.Close End Sub
その他の回答 (1)
- Wendy02
- ベストアンサー率57% (3570/6232)
ちょっと他のことをしてたら、#1 のBLUEPIXYさんの内容と同じ方法でした。 >テキストなどの軽いデータで出力したいです >(区切りはいりません) 区切りって、デリミタと呼びますが、何もなくても、やっぱりありますよね。 '第一案: 記録マクロで、Prn 出力してしまう方法ですね。 難しいことを考えないで、Prn 出力ではダメなのですか? 記録マクロの範疇です。 フォームボタンにでも、つけてください。 '第二案: Sub Test_CreateText() Dim Fname As String Dim objFSO As Object Dim objText As Object Dim myPath As String Dim buf As String Dim i As Long Const Delim As String = " " '区切りはは半角空白 Fname = "Test2.txt" '出力ファイル名 Set objFSO = CreateObject("Scripting.FilesystemObject") 'オブジェクト生成 myPath = ThisWorkbook.Path & Application.PathSeparator Set objText = objFSO.CreateTextFile(myPath & Fname) 'ファイル生成 With objText .WriteLine (Cells(1, 1)) For i = 5 To 500 buf = Cells(i, 1) & Delim & Cells(i, 2) & Delim & _ Cells(i, 3) & Delim & Cells(i, 4) & Delim & _ Cells(i, 5) & Delim & Cells(i, 6) '一旦、配列に入れたほうが速いけれど、今回は、こうします。 .WriteLine (buf) Next i End With Set objText = Nothing: Set objFSO = Nothing MsgBox "終了しました。" End Sub
お礼
ありがとうございました。 そのまま使わせて頂きます。
関連するQ&A
- マクロでセルに入力した数値をテキストファイルに出力したい。
お世話になっております。 早速ですが質問です。 マクロを作成しています。 エクセルのシートの50項目のセルに数値を入力していき、 シート上の置いたボタンを押すことで、入力された数値を テキスト形式で出力したいと思っております。 なにぶん初心者のためか、いい知恵が浮かびません。 例えば、どのような記述方法があるか。 お力をお貸しください。
- ベストアンサー
- オフィス系ソフト
- テキスト出力時に色を付けるには
エクセルのマクロで読み込んだセルを以下のコマンドでテキストファイルに出力しています。 Print #1, Format(a, "@"); Chr(9); intime; "/"; outtime; Chr(9); text その際に条件によって特定のテキストにだけ色を付けることはできますでしょうか。 可能でしたら方法を教えてください。
- 締切済み
- Visual Basic
- VBAマクロでCSV出力
はじめまして、よろしくお願いします。 ExcelのVBAマクロで 特定のセルの範囲を「シート名.csv」で出力するようなプログラムを書きたいです。 例)シート名「TEST」内にあるマクロボタンを押すと A1:A10のセルの内容が「TEST.csv」(アスキー形式ならなんでも) に出力される。 どういうやり方があるか、お勧めのサイト等、 ご教授いただけないでしょうか? 以上、よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- excelからのテキスト出力方法
はじめまして。 VBAでセルに入力された文字と固定した文字をテキストとして出力し 自動的に保存させたいのですがどうすれば良いでしょうか? イメージとしては・・・ セル・・・入力した文字 A1・・・○○○ A2・・・■■■ ↓ マクロ実行 ↓ テキスト出力・保存(D:\test.txt) ---テキスト内容--- set ○○○ set ■■■
- 締切済み
- オフィス系ソフト
- エクセル excel 機能 ソート テキスト出力
表計算のためエクセルの使用を考えています。 エクセルはこれまで使ったことがなく、どのようなものか分からず質問させて頂きます。 セルごとにランダムに入力した数値を小さい順に並べ替えてテキストとして出力する機能はありますでしょうか? 例えば0~100までの数字をセルごとにランダムに入力します。 そのランダムな数字を大きさ順に並べ替えたものを、例えばテキストデータとしてメモ帳などに貼り付ける形で出力させたいです。 このような機能はありますでしょうか? 教えて下さい、宜しくお願いします。
- ベストアンサー
- Excel(エクセル)
- Accessのテーブルをエクセルに出力する時に任意にフォルダを指定する。
DoCmd.OutputTo acTable, "ppppp", acFormatXLS, "c:\xzzz\aaaaaa.xls", この形で、テーブルをそのままエクセルに出力するとき、C:\xzzzの部分をプログラムに書き込む時に決めるのではなく、出力する都度フォルダを変えることは可能でしょうか? 希望は、フォームのテキストにに出力したいフォルダ名を入力してコマンドボタンを押すと、入力したフォルダにテーブルがエクセル形式で出力されるという形にしたいです。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- ACCESS Excelの出力について
stressmanといいます。 実は、ACCESSでクエリをExcelへ出力をしたいのですが、 ここで、既存のExcelのファイルのセルを指定して出力 というこはできるのでしょうか? 選択クエリで必要な情報を抜き出し、そのクエリを 「営業報告書.xls」というファイルのあらかじめ記載して ある「顧客名」「住所」のセルに格納していきたいのです。 マクロで「コマンド実行」-「Excel出力」を使って みたのですが、新しくファイルを開き、クエリのデザイン そのままで出力されます。 宜しくお願いします。
- ベストアンサー
- その他(データベース)
- ACCESSでフォーム入力→レポート出力したい
ACCESSでフォーム入力→レポート出力したい OS:XP,ACCESS2000 フォームのテキストボックスに入力した文字をレポートのテキストボックスに表示したい。 フォーム: ファイル名は「フォーム1」で、その中に作ったテキストボックス名は「入力データ」 コマンドボタン名は「レポート出力」 レポート: ファイル名は「レポート1」で、その中に作ったテキストボックス名は「出力データ」 フォーム1とレポート1を立ち上げてフォームのテキストボックスにデータを入力した後、 コマンドボタンを押してもレポート1のテキストボックスに入力したデータが表示されません。 レポート1を選択した後にデザインボタンを押し、その後にもう一度立ち上げると、 なぜかデータが書き込まれています。 コマンドボタンを押したのと同時にレポート1にデータが表示されるようにするには どうすれば良いですか? プログラムは以下の様になっております。 (1)クラスオブジェクト下 Private Sub コマンドボタン_Click() Call レポート書き出し() End Sub (2)標準モジュール下 Public Function レポート書き出し() Dim F As Form Dim R As Report Set F = Forms![フォーム1] Set R = Reports![レポート1] R![出力データ] = F![入力データ] End Function
- ベストアンサー
- その他MS Office製品
- AccessのデータをExcelテンプレートに出力・自動印刷したい
Access2000を使っています。 クエリで必要なデータだけをフォーム上に抽出した後、フォーム上のコマンドボタンをクリックすることで、Excel2000で作成したテンプレートに出力・自動印刷したいのですがこんなことできますか?できるのでしたら方法を教えてください。マクロでもいいのですが、できればVBAのコードで教えていただければ助かります。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
- マクロでActivecellの1行下に移動したい
EXCELのマクロで、あるセルにデータを入力した後、マクロボタンで1行下のセルをアクティブセルにしたいのですが、どう記述したらいいでしょうか?
- ベストアンサー
- Visual Basic
お礼
ありがとうございます。 記録マクロしか使った事が無かったので 色々勉強になりました。