![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
No.2ベストアンサー
- 回答日時:
こんばんは。
>別シートを参照していれば、値で貼り付けて、
>そのシートからシート参照を無くしたいです。
値を貼り付けるのは別にして、私も困っていましたので、作ってみました。
試してみてください。なお、私の方は、[個人用マクロブック]の中に入れることにします。
クイックアクセスツールバーなどに入れる便利かもしれません。
ただし、SearchRefFormula の名前は、「リンク検索」とかにしてください。探しやすいからです。
>一般的にはどのように判定するものでしょうか。
雑誌などで有名な人のマクロでは、Find メソッドを使っていましたが、ご質問者さんのHasFormula を活かすためには、以下のようなSpecialCells のほうがよいかと思いました。
*の部分は、私個人のマクロの部分です。なんとなく想像が付くと思います。
'//標準モジュールのみ
Sub SearchRefFormula()
Dim wb As Workbook
Dim sh As Worksheet
Dim Rng As Variant
Dim c As Variant, i As Long
Dim n As Long 'Static n As Long '*
n = 1
Const sFIND As String = "!"
Const sFIND2 As String = "*.xls?]*"
' If n = 1 Then
Set wb = ActiveWorkbook
' End If
For i = n To wb.Worksheets.Count
On Error Resume Next
Set Rng = Worksheets(i).Cells.SpecialCells(xlCellTypeFormulas, 23)
On Error GoTo 0
If TypeName(Rng) = "Range" Then
Application.ScreenUpdating = False
For Each c In Rng.Cells
If InStr(2, c.Formula, sFIND) > 0 Or _
c.Formula Like sFIND2 Then
c.Value = c.Value
Beep
'*
End If
Next c
End If
Application.ScreenUpdating = True
Next i
n = 0
If n = 0 Then
MsgBox "完全に終了しました。", vbInformation
End If
End Sub
'--------------
私のためのマクロは
''c.Interior.ColorIndex = 38 '色を付ける場合
''wb.Worksheets(i).Select 'シートを開く
''Beep '音が出る
''End '止める
'-----------------
No.3
- 回答日時:
ご質問の内容自体が一般的でないため、当然、一般的な判定方法も無いと思います。
よって、_shuichi_さんの判定方法が正解と考え良いのではないでしょうか。
ちなみに、=A1+Sheet2!A1のように、ひとつの数式に自シートと他シートを同時に使用していた場合は、値で張り付けですか?
そうなると、シート内での整合性が保証できなくなります。
結果的に、すべて値張り付けする必要があるような気がするのですが、いかがでしょう?
ご回答、ありがとうございました。
そうですね。「=A1+Sheet2!A1」のようなケースは想定していませんでした。
でも、幸いにそのようなケースは無かったので大丈夫でした。
大変参考になりました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- Excel(エクセル) エクセルの数式について ブック内の別シートの値の含まれたセルの個数を集計したい 全シート一覧のシート 1 2022/07/21 19:28
- Excel(エクセル) ピボットテーブルの参照式はオートフィル出来ない? 2 2023/03/03 15:57
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) Excel シート複数 金額日計表と日付 簡単にシートコピーしたら前日の残高と日付を変更させたい 1 2022/07/15 22:10
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Excel(エクセル) excelのindirect関数の別ブック参照について質問です。 1 2022/06/03 15:17
- Excel(エクセル) マクロVBA別Excelブックにデータ転記 2 2022/07/10 23:35
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
別のシートから値を取得するとき
Visual Basic(VBA)
-
エクセルVBA 数式の中に、変数で定義したシート名を入力するには
Excel(エクセル)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
-
4
EXCEL VBA マクロ 実行する度に処理速度がどんどん遅くなる原因が知りたい
Excel(エクセル)
-
5
VBAでの Replace関数で、ワイルドカードは使えないのでしょうか?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAでパスの¥マークに...
-
Excelで金銭出納帳。繰越残高を...
-
Excelで同じシートのコピーを一...
-
EXCELで同一フォーマットのシー...
-
EXCEL:同じセルへどんどん足し...
-
エクセルの複数シートの保護を...
-
エクセルでファイル保存時に複...
-
前の(左隣の)シートを連続参...
-
複数シートの平均を算出し平均...
-
EXCELで1ヶ月分の連続した日付...
-
エクセルで「Ctrl+F11」は何の...
-
基本となるシートをコピーした...
-
別シート参照のセルをシート毎...
-
複数のシートの同じセル範囲を...
-
シート名が変わる場合のVBAの設...
-
特定のシートの削除を禁止した...
-
excelで会議室予約表の作成(マ...
-
VBAでシートコピー後、シート名...
-
エクセルで前のシートを連続参...
-
シート名ではなく、相対位置で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの複数シートの保護を...
-
Excelで同じシートのコピーを一...
-
VBAでシートコピー後、シート名...
-
別シート参照のセルをシート毎...
-
EXCEL:同じセルへどんどん足し...
-
エクセルでファイルを開いたと...
-
エクセルVBAでパスの¥マークに...
-
Excelで金銭出納帳。繰越残高を...
-
前の(左隣の)シートを連続参...
-
EXCELで1ヶ月分の連続した日付...
-
Excel VBについての質問です。
-
複数シートの特定の位置に連番...
-
エクセルで前のシートを連続参...
-
特定のシートの削除を禁止した...
-
エクセルで前シートを参照して...
-
Accessのスプレッドシートエク...
-
Excel、同じフォルダ内のExcel...
-
excelでシート毎の最終更新日を...
-
Excelのシートを、まとめて表示...
-
EXCELで同一フォーマットのシー...
おすすめ情報