- 締切済み
エクセルシートのコピーとシート名の変更&集計表
エクセルの集計に関して初心者です。1シートに同じ内容で各顧客のデータを同じフォームで入力しています。これを新しい顧客が出てくるたびにシートコピーしているのですが、VBAでボタンでコピーできるようにしたいです。 /Users/inouehirotaka/Desktop/スクリーンショット 0030-09-17 11.55.37.jpg さらにこれらの各シートの内容を集計表で一覧にしたいのですが、良い関数もしくはVBAでの転記方法をお教えください。 /Users/inouehirotaka/Desktop/スクリーンショット 0030-09-17 11.56.28.jpg 色々VBAで試してみたのですが、どうもうまくいきません。ご教授よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- masnoske
- ベストアンサー率35% (67/190)
説明用の画像がアップできていないのではないでしょうか。言葉だけだと、いまいち状況が掴めません。 シートコピーが目的なのか、集計が目的なのかも判りづらいです。 集計が目的なら、顧客シートとデータシートを別にして、集計はSUBTOTAL関数というのが鉄板かと思うのですが…
- watabe007
- ベストアンサー率62% (476/760)
>さらにこれらの各シートの内容を集計表で一覧にしたいのですが、良い関数もしくはVBAでの転記方法をお教えください。 こんなこと? http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/prog/prog01.html
- watabe007
- ベストアンサー率62% (476/760)
>VBAでボタンでコピーできるようにしたいです。 デスクトップ上のjpgをシートに取り込みたいのか シートの一定範囲をjpgでデスクトップにエクスポートしたいのか? >色々VBAで試してみたのですが、どうもうまくいきません。 この過程を教えてもらうと推測しやすいんだけど とりあえずアクティブシートのA1:H30の範囲をデスクトップ上に jpgでエクスポートしてみました。 Sub Test() Dim FilePath As String Dim myRang As Range Dim cht As Chart FilePath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & _ "\スクリーンショット " & "00" & Format(Now, "e-mm-dd hh.mm.ss") & ".jpg" '図形でエクスポートする範囲を設定 Set myRang = ActiveSheet.Range("A1:H30") 'セル範囲を画像としてコピーする(CopyPictureメソッド) myRang.CopyPicture appearance:=xlScreen, Format:=xlPicture '空白のチャート作成 Set cht = ActiveSheet.ChartObjects.Add(0, 0, myRang.Width, myRang.Height).Chart 'チャートにセル範囲の図形を貼付け cht.Paste '図形をエクスポート cht.Export Filename:=FilePath, filtername:="JPG" 'エクスポートが済んだのでシート上のChartObjectsを削除します。 cht.Parent.Delete End Sub