• 締切済み

エクセルのマクロで...

エクセルのマクロなのですが、うまく実行されません。 sheet1・sheet2とシートがあって、 sheet1のデータを範囲にして、既存のワークシート に保存の形でsheet2にピボットテーブルを作成し、 できたピボットテーブルの、フィールドを"表示しない" にする、というマクロを作成し、実行したのですが、 ピボットテーブルは作成できるところまでは実行される のですが、「フィールドを"表示しない"」が 出来ません。なぜがsheet1の元のデータがデリート されてしまいます。 マクロ初心者なので、困っています。 どなたかご存知でしたらお願いします。

みんなの回答

  • keikan
  • ベストアンサー率42% (75/176)
回答No.2

エクセルでマクロを作成する場合、 マクロの記録を行い、まず自力でそのような作業を行い コード化する。 必要に応じて、修正を加えてみる。 この辺を利用すると、どこが違うか見えてきたりします。

  • samui
  • ベストアンサー率31% (6/19)
回答No.1

コードをアップしてみてはどうでしょうか? それとコードで作成しないといけない理由も 説明として付加してはどうでしょうか?

関連するQ&A

  • Excel 2010 ピボットテーブル 

    Excel 2010のピボットテーブルで、複数のワークシートを選択してピボットテーブルを作成したいのですが、以前のヴァージョンでは、ピボットテーブルウィザードの1/3の「分析するデータのある場所」で「複数のワークシート範囲」を選択して作業を行っていたのですが、Excel 2010ではこの「複数のワークシート範囲」という項目がありません。 他のやり方で同じようなことができるのでしょうか。 やり方をご存知の方がいれば教えて下さい。 よろしくお願いいたします。

  • 既存ワークシートにピボットテーブルを作成するマクロ

    既存のワークシートにピボットテーブルを作成するマクロを登録したいのですが、どうもマクロ実行時には指定した既存シートを参照してくれません。 記録時には既存ワークシートのA1を指定しましたが、VBAで確認すると、TableDestination:=Range("A1")となっています。 恥ずかしながら、VBAは詳しくありません。 TableDestination:=Range("A1")が作成先の指定なのでしょうか? ワークシートに作成するにはどのように指定すればいいのでしょうか?

  • マクロでピポットテーブル うまくいかない

    エクセル2007で、ある社内基幹データからとってきたデータを、エクセルシート(sheet1)に貼り付けて、その表からマクロでピボットテーブルを作成し(sheet2か)、簡単な担当者と仕事場所のリスト表を作るといったものを作成しました。 とりあえず、うまく動くのですが、 時々うまくいきません。別のPCでやった場合など。 うまくいかないケースの、原因がよく分かりません。 以下のようなエラーがでまして、黄色の部分が下のものになります 実行時のエラー1004 そのピボットテーブルのフィールド名は正しくありません。ピボットテーブルレポートを作成するには、ラベルの付いた列でリストとして編成されたデータを使用する必要があります。ピポットテーブルのフィールド名を変更する場合は、フィールドの新しい名前を入力する必要があります。 (以下、問題があるとしてデバッグが求められる部分) ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ "Sheet1!R1C1:R71C23", Version:=xlPivotTableVersion12).CreatePivotTable _ TableDestination:="Sheet2!R1C1", TableName:="ピボットテーブル2", DefaultVersion _ :=xlPivotTableVersion12 まだ初心者で、上記よく分かりませんので、何が問題なのか、ヒントなどいただけるとありがたいです。

  • Excel マクロ アクティブシートの指定について

    こんにちは。Excelでマクロを作成しています。あるファイルを開きマクロを実行すると、日々エクスポートしているExcelファイルのシートが開き、自動的にそのシートにピボットテーブルを実行し集計するマクロを作成しています。ファイルの指定はファイル名が毎日日付のファイル名(例:02-12等)になるので、[ファイルを開く]ダイアログを表示させ、そこから指定することにしました。ただ、シート名もファイル名と同じなのですが、どうしてもそのシート名でしか作成できません。現在アクティブなシートにピボットを実行するようにするには、どうすればいいでしょうか。 下記に作成したVBを記載しておきます。 Fname = Application.GetOpenFilename(FileFilter:="Excel ファイル (*.xls), *.xls") ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "'02-12'!R1C1:R91C23").CreatePivotTable TableDestination:="", TableName:= _ "ピボットテーブル3", DefaultVersion:=xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select ActiveSheet.PivotTables("ピボットテーブル3").AddFields RowFields:=Array("所属名", _ "受付担当者") ActiveSheet.PivotTables("ピボットテーブル3").PivotFields("状況").Orientation = _ xlDataField ・・・ 上記の02-12の部分がシート名になるのですが、このシート名は毎日変化していきます(次の日は、02-13 など)。どのように作成すればいいでしょうか。 よろしくお願いします。

  • 記録したマクロを実行するボタン

    シート1にマクロを実行するボタンを 作成したいと思います。 マクロは、シートに2にアクセスdbのクエリデータを 外部データの取り込み実行でインポートする よう記録しています。 シート1のボタンに記録したマクロを 貼り付けると、エラーメッセージで 「とりこみ先の範囲は、クエリテーブルが 作成された同じワークシートにありません」 と出ました。 同じワークシートでないとクエリ実行ボタンは 作れないのでしょうか?? よろしくお願いいたします。

  • アクセスのレポートをマクロでEXCELに出力したいのですが

    マクロを作成して「ワークシートの変換」「アプリケーションの実行」でテーブルやクエリをEXCELに出力することは出来るのですが、レポートもマクロからもワークシートの変換ができるのでしょうか。記述の方法を教えてください。

  • エクセルのピボットテーブルで複数の範囲をとる場合

    ピボットテーブルで分析するデータが複数範囲にある場合、ピボットテーブルウィザードで複数のワークシート範囲を選び、次の画面へ行き、フィールドを含め複数範囲を選択してもフィールドが、列・行・値となり、うまくできません。 わかる方いらっしゃいましたら、是非教えてください! 宜しくお願いします。

  • エクセルピボットテーブルのフィールドアイテムについて

    はじめまして。質問させていただきます。 売上報告表を集計するためにピボットテーブルを使っています。(エクセル2003) 必要項目はフィールドのプルダウンにチェックを入れることで選択していますが、元データ側に今まで集計したことのない項目が増えるたびにピボットテーブル側でも表示されてしまいます。(取引先フィールドに新規取引会社が増えていく) 表示する項目は固定ですので、現在は増えてしまった項目のチェックを手作業ではずして対応していますが、この作業を行うピボットテーブルが20個近くあるので正直煩雑でたまりません。 (ピボットテーブルは全て一つのブック内にあります。シートは2枚です。参照データ範囲は同一です。) この状態でも選択した項目のみ固定で表示できる設定、もしくはマクロ等ありましたら教えて下さい。 よろしくお願いします。

  • Excelのピボットテーブル データ範囲について

    Excelのピボットテーブルについて質問です。 ピボットテーブルのデータ範囲内に、 非表示になっている行があります。 その状態でピボットテーブルを作成すると 非表示行もデータも含まれて集計されてしまいます。 非表示行は含めずにピボットテーブルを作成する方法は ないのでしょうか? 非表示行の特定が難しいため(複数あり)データ範囲から 外すのは難しいかと思います。。 Excelは2007です。 よろしくお願いいたします。

  • Excel2003 ピボットテーブルについて教えて下さい

    Excel2003 ピボットテーブルについて教えて下さい Excel2003でピボットテーブルを作っています。 まず「ブックA」の「シートA-1」にあるデータをもとにして、 新規シート「シートA-2」にピボットテーブルを作りました。 その後、「ブックB」の「シートB-1」にあるデータでピボットテーブルを作ろうとしたのですが、 「シートA-1」「シートB-1」はフィールド項目も表示したい表の形もまったく一緒なので、 「ブックA」のピボットテーブルを流用しようと考えました。 なので「ブックA」のピボット「シートA-2」を、「ブックB」内にコピーして、 その後「ブックB」に新しくできたピボットテーブルの参照範囲を「シートB-1」のデータにしました。 ピボットテーブルは無事にできたのですが、 フィールド名の右の▼をクリックすると出てくるリストに、 「シートA-1」のものと、「シートB-1」のものが混じって表示されてしまいます。 「ブックB」のピボットテーブルには、「シートB-1」のものだけを表示したいのですが…。 フィールドのリストで要らないものを削除する方法、 または、そもそもピボットテーブルのコピー自体でもっと良い方法があったら教えて下さい。 よろしくお願いします。

専門家に質問してみよう