- ベストアンサー
エクセルの自動処理をしてくれるマクロ
- エクセルのマクロを使って、年月の入力やデータのコピー・ペースト、消去などの処理を一括で行う方法を教えてください。
- 具体的な処理内容は、年月を入力すると該当するシートにデータをペーストし、元のデータを消して、設定シートに月の数を表示し、売上表を保存するというものです。
- マクロを使ってこれらの処理を自動化することで、煩雑な作業を省力化し、効率的に作業を進めることができます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ANo1の方がおっしゃるのが正論だと思いますが、まあこの程度の数分で書ける簡単なコードならサンプルとして無料でご提供しましょうか(笑) > (4)"設定"シートのD2に月の数を出力する。 この意味がよくわかりませんでしたので、そkにYYYYMMを入れときます。(それを次回のデフォルトで表示します。) > 保存先はC:\Documents and Settings\suzuki\デスクトップ\売上集計表 「売上集計表」というのはこのBOOKのファイル名ですね? > "1月"~"12月 シート名の月数は半角だという前提で書きました。 Sub test01() Dim df As String Dim ans Dim myMM As Long df = Sheets("設定").Range("D2").Value ans = Application.InputBox("年月を入力して下さい。" _ & vbNewLine & "例)2011年1月⇒201101", "YYYYMM形式で", df, Type:=1) If ans = False Then MsgBox "キャンセルしました。" Exit Sub End If myMM = Val(Right(ans, 2)) Sheets(myMM & "月").Range("B4:D503").Value = Sheets("入力").Range("B4:D503").Value Sheets("入力").Range("B4:D503").ClearContents Sheets("設定").Range("D2").Value = ans ThisWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\suzuki\デスクトップ\売上集計表.xls" MsgBox "保存完了しました。", , "( ̄ー ̄)v" End Sub
その他の回答 (1)
- rukuku
- ベストアンサー率42% (401/933)
こんばんは >どういったコマンド文を書けばいいでしょうか ご質問の文面から、「おおまか」なことは分かります。 しかし、コマンド文をとなると、もっと細かなことを知る必要があります。 「処理内容」の内容を、rutohamuni さんが実際にプログラムにした上で「ここが分からない」という部分を質問してください。 業者に委託すれば、10万円~100万円(具体的な内容にもよります)の内容になりそうです。一方で、必要な「断片」の知識はインターネットを使えば無料で得られます。このサイトでも「断片」であれば実際のコード付での例は得られます。 時間と手間をかければこれらの「断片」を集めて1つのプログラムにすることが出来ます。その時間と手間をかけてrutohamuni さんがご自身でプログラムするか、時間や手間を省くためにお金を出して誰かに依頼するかどちらかだと思います。