こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

エクセルシートのコピーとシート名の変更&集計表

エクセルの集計に関して初心者です。1シートに同じ内容で各顧客のデータを同じフォームで入力しています。これを新しい顧客が出てくるたびにシートコピーしているのですが、VBAでボタンでコピーできるようにしたいです。
/Users/inouehirotaka/Desktop/スクリーンショット 0030-09-17 11.55.37.jpg

さらにこれらの各シートの内容を集計表で一覧にしたいのですが、良い関数もしくはVBAでの転記方法をお教えください。
/Users/inouehirotaka/Desktop/スクリーンショット 0030-09-17 11.56.28.jpg

色々VBAで試してみたのですが、どうもうまくいきません。ご教授よろしくお願いいたします。

投稿日時 - 2018-09-17 12:08:05

QNo.9538169

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

説明用の画像がアップできていないのではないでしょうか。言葉だけだと、いまいち状況が掴めません。

シートコピーが目的なのか、集計が目的なのかも判りづらいです。

集計が目的なら、顧客シートとデータシートを別にして、集計はSUBTOTAL関数というのが鉄板かと思うのですが…

投稿日時 - 2018-10-03 05:30:16

ANo.2

>さらにこれらの各シートの内容を集計表で一覧にしたいのですが、良い関数もしくはVBAでの転記方法をお教えください。
こんなこと?
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/prog/prog01.html

投稿日時 - 2018-09-18 14:54:45

ANo.1

>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

投稿日時 - 2018-09-17 17:52:50

あなたにオススメの質問