- ベストアンサー
エクセルのマクロで【CSV用シート】に情報反映し、保存する方法
papayukaの回答
再びこんにちは。 > 元のエクセルファイルのcsv用シートには内容は残らないのでしょうか? 別ブックにするしかないです。 こんな感じかな? Sub bbb() Dim LRow As Long, r As Range, FName, wb As Workbook LRow = Worksheets("入力シート1").UsedRange.Rows.Count Worksheets("入力シート1").UsedRange.Copy With Worksheets("CSV用シート") .Activate .Range("A1").PasteSpecial xlPasteAll Application.CutCopyMode = False .Range("C1").Value = Worksheets("入力シート2").Range("A1").Value .Range("D1").Value = Worksheets("入力シート2").Range("A4").Value .Range("C2:C" & LRow).Value = Worksheets("入力シート2").Range("B1").Text .Range("D2:D" & LRow).Value = Worksheets("入力シート2").Range("B4").Text .Range("A1").Select .Select .Copy Set wb = ActiveWorkbook FName = Application.GetSaveAsFilename("", "CSV (*.CSV), *.CSV") If FName <> False Then wb.SaveAs FName, xlCSV End If End With End Sub ボタンは2種類あります。 コントロールツールボックスのCommandButtonならClickイベントに Private Sub CommandButton1_Click() Call bbb End Sub 表示 - ツールバー - フォームのボタンならマクロの登録に bbb を選べばOKです。
関連するQ&A
- Excel マクロについて
Excelで作成したシートを次の手順で保存できるようなマクロを作成したいのですがどうしたらいいでしょうか? 1)あらかじめ所定のフォーマットを用意しユーザーが入力できるようにする。 2)ユーザがボタンを押すとそのシートの上2行(1行、2行)と左1列(A列)が削除され、 (タイトル行なのでCSVにする際に不要な為。) 3)「名前を付けて保存」のダイアログボックスが表示し 4)保存先のフォルダが「X:\DATA\」となるようにし 5)ファイル名がその日付(yyyymmdd.csv)、CSV形式 (例:20031125.csv)となるようにし、 (ユーザーにても変更の可能性もあるので固定にはしない) 6)ユーザーが保存先、ファイル名等を確認語保存する。 7)保存後は元のEXCELシート(CSV形式でない)で開いた状態で終了とする。 自分でも作成したのですが、本当にこれでいいのかも疑問でご意見を教えて下さい。 特に、7)のところがうまくいかず、6)での保存後どうしても開いているファイルの状態が CSV状態になります。 以上、ご存知の方教えて下さい。
- ベストアンサー
- オフィス系ソフト
- Excelのマクロ『困ってます!』
Excelで、以下のような機能を持ったマクロをつくりたいのですが、情けないのですが全くできません。 わかる方、どうかよろしくお願いいたします。 Sheet1のA1~D1の値(例では、東京、練馬区、○○、△△)を、 全て「含む」Sheet2のセルに目印をつけ(例は隣のセルに「○」と入力)し、 それが終わったらSheet1のA2~D2の値(例では、東京、練馬区、○○、□□)で・・・ の繰り返しです。 あくまでSheet1の値を全て「含む」ものが対象なので、Sheet2の5行目のように、 余計な値(例では★)が混じっているものも対象としたいです。 例: [Sheet1] 1 |東京都|練馬区|○○ |△△ | 2 |東京都|練馬区|○○ |□□ | 3 |東京都|目黒区|●● |■■ | 4 |埼玉県|川口市|◇◇ |×× | [Sheet2] 1 | |東京都港区・・・・ 2 | |東京都練馬区・・・・・ 3 | |東京都練馬区○○◎◎ 4 |○|東京都練馬区○○△△ 5 |○|東京都練馬区★○○★□□ 6 | |東京都練馬区★★□□ 7 |○|東京都目黒区●●■■ 8 |○|埼玉県川口市◇◇×× 9 | |神奈川県・・・・・
- 締切済み
- Visual Basic
- エクセルをcsvで保存する
こんにちは、是非教えて下さい。 エクセル2007を使用しています。 このファイルはcsvテキスト形式で提出しなければならないのですが、 エクセルsheet1にA列に値を入力して エクセルsheet2のA列に並び替えます。 この項目には前スペース右詰と指定があります。 エクセルsheet2に並び替える際にセルA列に =REPT(" ",12-LEN(sheet1!A1))&sheet1!A1 を入れました(A2、A3、、、と続きます) csvに保存して確認(メモ帳)したら、 エクセルsheet1で値を入力してない所には(下の図の「 _ 」)スペースが入ってしまいました!! (エクセル) A 1 123456 2 (未入力) (メモ帳) ,______123456,,(現在) ,____________,,(現在) ↓ ,______123456,,(現在と同じ) ,,,(理想) 上の(理想)のように詰めたいのですが よい数式を教えて下さい。 初心者なので説明をいれて頂けると少しは理解できそうです。 よろしくお願いしますm(__)m
- ベストアンサー
- オフィス系ソフト
- エクセルのマクロについて
マクロのコードについて質問させていただきます。 シート1のA1の値をシート2のA1に自動で反映させるマクロを教えていただけないでしょうか。
- ベストアンサー
- その他(データベース)
- エクセルVBAで困ってます。
私は今、エクセルVBAで困ってます。 内容はデータを入力したエクセルのシート上で、別のファイル(CSV形式)を開いてある特定の行に入力したデータを参照し、完全に一致した際には、別のファイルの内容をシートに反映させるといったようなことは可能でしょうか? 襲えて下さい。 回答お待ちしています。
- 締切済み
- Visual Basic
- エクセル マクロでのエクセルファイル取込について
エクセルで別のエクセルファイルをマクロで取込み、取込したデータを自動で任意の場所にデータが入力されるようなものを作りたいと考えています。 csvデータの取込は作ることが出来たのですが、エクセルファイルをcsvデータのように取込することは出来ないでしょうか? 出来ないとしたら、取込したいエクセルファイルを一度csvで保存してからcsvとして取込するというやり方で対応するしかないでしょうか? 出来れば、取込したいエクセルファイルのシートが複数にわかれていて、全シートの情報を取込したいと考えているので、エクセルのままで全シート取り込めれば・・と思います。 何か上記の方法でなくとも、最善の方法(一番工数が少なく済む方法)があれば教えていただきたいです。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- エクセルマクロのコードを隠す
とあるExcel2003で開けるxlsファイルを貰いました。 セルに値を入力すると、セルの背景の色が変わります。 そういうマクロを組んでいるんだと思ったのですが、 シートに対して「コードを表示する」で見ても何も書かれていません。 プロジェクト欄にはこのシートと[ThisWorkbook]しかなく、 [ThisWorkbook]にも何も書かれていません。 組んだマクロのコードを何かして隠しているのでしょうか? それともエクセルの設定でそのようなことが可能なのでしょうか。
- ベストアンサー
- オフィス系ソフト
- エクセルのシートをコピーしたら
一つのブック内で同じ形式のシートをコピーして複数作りました。 具体的には月報の用紙をひな形を作ってコピーしたのですが、どのシートに入力しても全部のシートに反映されてしまいます。 これを解消するにはどうすればよいのでしょうか? エクセル2007で2003形式で保存してあります。
- ベストアンサー
- その他MS Office製品
- エクセルマクロ
入力したワークシートを 新しいブックにコピーして保存するマクロを作成しました。 ただ下記の様に保管すると、 数式もそのまま元のエクセルファイルの数式を参照してしまいます。 下記のマクロをあまり変更しないで、 値貼付け(もしくは値貼付けしながら、新しいブックへコピー) するにはどの様に変更するといいでしょうか? よろしくお願いします。 'Sub newfilesave() Sheets("Sheet1").Copy '名前を付け、ファイル形式も決めてデスクトップに日付を付けて保存する。。 'ActiveWorkbook.SaveAs _ ' Filename:="C:\Users\xxxxx\Desktop\" & Format(Now(), "yyyymmdd_hhmm"), _ ' FileFormat:=xlOpenXMLWorkbook 'End Sub
- ベストアンサー
- Excel(エクセル)
お礼
お礼が遅くなってしまってごめんなさい。 二度の質問にも関わらずご返答頂いてありがとうございました。おかげで完成です!!