
こんなのが実現できるなら是非教えていただきたいのですが、
集計.xlsm というマクロブックがあるのですが、
行数が多いのと各シートに数式が設定されているせいでファイルサイズが大きくて、
配布に適していません。
配布した先では閲覧のみなので、マクロは要らないし数式も不要です。
そこで全シートのセルを値にして、集計(配布用).xlsx で別名保存すれば良いと思いました。
シート数やシート名が不明ですので、
具体的には、
すべてのシートを順番に、シート全選択(Alt+A以外にある?)して、
コピーして、値で上書きして、別名保存というロジックになるかと思うのですが、
複雑でないなら教えていただけないでしょうか?
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
値貼り付けを"除外"するシート名の頭に「★」を付けておく。
①シート名1文字目が「★」以外のシートを選択
②全セルコピー → 値貼り付け
③全セル選択解除、複数シート選択解除
④「.xlsx」で保存
こんな感じにしてみました。
Sub Macro1()
'シート1番目を選択(シート名1文字目が「★」から始まっていないと想定)
Sheets(1).Select
'シート名1文字目が「★」以外のシートを選択
For Each i In ThisWorkbook.Sheets
If Not i.Name Like "★*" Then
i.Select Replace:=False
End If
Next i
'全セル選択
Cells.Select
'コピー
Selection.Copy
'値貼り付け
Selection.PasteSpecial Paste:=xlPasteValues
'おまけ(複数シート、全セル選択状態で終わるのが気持ち悪いので解除)
Cells(1, 1).Select
Sheets(1).Select
'「.xlsx」で保存
Application.DisplayAlerts = Fals
ActiveWorkbook.SaveAs Filename:=Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, ".") - 1), _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
End Sub
No.4
- 回答日時:
質問者さんの意図と反して、PDFで出力した物を配布すれば良いと思うのは自分だけでしょうか。
No.1
- 回答日時:
「開発」メニュー →「マクロの記録」
からざっくり作ってみました。
Sub Macro1()
'全シート選択
Worksheets.Select
'全セル選択
Cells.Select
'コピー
Selection.Copy
'値貼り付け
Selection.PasteSpecial Paste:=xlPasteValues
'おまけ(全シート、全セル選択状態で終わるのが気持ち悪いので解除)
Cells(1, 1).Select
ActiveSheet.Select
End Sub
ありがとうございます。
試してみたら一つ問題が発生しました。
ピボットテーブルのシートがあったのですが、そこまで値になってしまいました。
除外するシート名だけ分かるようにすれば回避できないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【VBA】全シートの計算式を全て値に変換したい
Visual Basic(VBA)
-
エクセルで複数のシートをまとめて一度にコピーし、一度に値を貼り付けることができますか
その他(パソコン・スマホ・電化製品)
-
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
-
4
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
5
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
6
VBAで文字列を数値に変換したい
Excel(エクセル)
-
7
フォルダ内ブックの数式を全て値に変換するマクロ?
Excel(エクセル)
-
8
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
9
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
10
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
11
Excel2000/VBA:値と書式のみ貼り付けたい。
Excel(エクセル)
-
12
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
13
名前をつけて保存した後、元のファイルに戻るには
その他(コンピューター・テクノロジー)
-
14
VBAで指定シート以外の選択
Visual Basic(VBA)
-
15
VBAのオートフィルターで該当行がない場合に処理を止めたい
Excel(エクセル)
-
16
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
17
VBA 数値を文字列として貼付したい
Excel(エクセル)
-
18
VBAでの Replace関数で、ワイルドカードは使えないのでしょうか?
Visual Basic(VBA)
-
19
マクロボタンを押すと、ファイル名を“日付(年月日)_文字.xlsx”にして指定ファイルに保存したいの
Excel(エクセル)
-
20
オートフィルターをかけ、#N/A以外で絞込みするVBA記述をご教示ください
Excel(エクセル)
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XL:BeforeDoubleClickが動かない
-
Excelマクロのエラーを解決した...
-
エクセルVBA Ifでシート名が合...
-
実行時エラー1004「Select メソ...
-
実行時エラー'1004': WorkSheet...
-
【VBA】特定の文字で改行(次の...
-
excelのマクロで該当処理できな...
-
ブック名、シート名を他のモジ...
-
Excel チェックボックスにチェ...
-
VBAマクロでシートコピーした新...
-
Excel VBA シート名をすべて取...
-
ワークシートを追加したときの...
-
Excel VBA マクロ 先頭行の固定...
-
ExcelVBA:複数の特定のグラフ...
-
マクロを使って、シート印刷完...
-
Worksheet_Changeの内容を標準...
-
エクセルで通し番号を入れてチ...
-
SheetsクラスのSelectメソッド...
-
C#でExcelのシートを選択する方法
-
エクセルVBAで、シート1の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
特定の文字を含むシートだけマ...
-
実行時エラー'1004': WorkSheet...
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
エクセルVBA Ifでシート名が合...
-
実行時エラー1004「Select メソ...
-
VBA 存在しないシートを選...
-
エクセルで通し番号を入れてチ...
-
VBA 検索して一致したセル...
-
XL:BeforeDoubleClickが動かない
-
VBA 指定した回数分、別シート...
-
VBAマクロでシートコピーした新...
-
シートが保護されている状態で...
-
ブック名、シート名を他のモジ...
-
【VBA】全ての複数シートから指...
-
別のシートから値を取得するとき
-
ExcelのVBAのマクロで他のシー...
-
Excel チェックボックスにチェ...
おすすめ情報