web-dev-qa-db-ja.com

壊れたリンクを壊すことができないExcelで壊れたリンクを見つける方法?

私はそれを開くたびに壊れたリンクについて文句を言うExcelのブックを持っています:

enter image description here

私は Microsoftのガイド で示唆されているように[.を検索するために '検索'を使ってみました。ガイドが示唆しているように私はまたオブジェクトを捜してみたが何も起こらなかった。

この厄介なリンク切れを見つけるにはどうすればよいですか?

22
blarg

これらのリンクが「隠れる」ことができる1つの場所は名前付き範囲です。 Excelは数式内のリンクを壊すだけです。名前付き範囲を修正するには、Formulas-> Name Managerに移動して、外部のワークブックが参照されているかどうかを確認します。 Shiftキーを押しながらクリックすると、束を選択して削除できます。

17
Madball73

私はちょうどこの正確な問題を抱えていて、そしてここで言及されていない別の壊れたリンク位置を見つけました:データ検証(さもなければドロップダウンメニューとして知られている)。

Microsoftサポートの「オブジェクト」を見つけるのと同じように、「ホーム(タブ) - >編集(グループ) - >検索と選択 - >特別に移動... - >データ検証」を選択して、データ検証がオンになっているセルをすべて見つけます。ワークシートその後、多少なりともデータ検証セルを1つずつ確認する必要があります。これは、いずれかのデータ検証セルをクリックし、[データ](タブ) - > [データツール](グループ) - > [データ検証] - >の順にクリックします。設定 - >ソース。 "ソースを更新するときは、「同じ設定の他のすべてのセルにこれらの変更を適用する」チェックボックスをオンにして、同じソースをすべて変更してください。

12
Dan G

これは私にとって非常に信頼性の高い解決策です。

  1. .xlsxファイルのファイル拡張子を.Zipに変更してください
  2. このZipファイルを新しいフォルダに解凍します。
  3. エクスプローラを使用して、そのフォルダ内で、ファイル内のファイル名CONTENTSを検索します。

注:名前はURL形式、例えばスペースではなく%20で書かれている場合があるので、この場合は、問題のあるファイル私はファイル名の最後のWord + .xlsxを使いました。

  1. その結果、おそらくsheetN.xmlが返されます。これは、問題のあるシートに対応するファイルです。ここで、Nは、表示される順序での問題のあるシートの番号です。メモ帳などのテキストエディタで開きます。

  2. 検索文字列を見つけて、その周りのコードを見てください。問題のあるシートで参照できるセル参照をいくつか示します。

注:前に指摘したように、条件付き書式設定またはデータ検証にもあります。

9
Geoff M

オブジェクト、式、名前、グラフのタイトル、データ系列を確認したところ、外部参照が「条件付き書式」になっていることがわかりました。ただし、[Budget.xls]などの他のワークブックへの参照は、どのフィールドまたは条件にもありませんでした。その後初めて、私は "Connections"グループのリンクをうまく切断することができました。これが役に立つことを願っています!

3
AndyUpNorth

それよりおそらく簡単です。期間は助けの文の終わりです。開いている角括弧を探しているだけです。言い換えれば:

[

のためではない

[.

式で。後者はピリオドが後に続く角括弧だけを見つけるでしょう。 Excelの検索は正規表現を行いません。

2
RHM

私は "Dan G"エントリが私の問題であることがわかりました。別のシートへのリンクを持つ検証セル。しかし、Dan Gの検索方法を使用するとうまくいくが、ちょっとした工夫が必要です。

有効な検証セルを検索し、[ホーム](タブ) - >編集(グループ) - >検索と選択 - >特別に移動... - >データ検証の順に選択し、[データ検証]の下の[同じ]ラジオボタンを選択します。ワークシートで同じデータ検証を持つすべてのセルを見つけます。

それが強調表示/選択されないようにあなたに問題を引き起こしているものは際立っているべきです。

1
Jm McFarlane

私はExcel 2016で同様の外部リンクの問題を抱えていました。私はさまざまな方法を試しましたが、ついにデータタブの下のデータ検証タブによって成功しました。 [Circle Invalid data]をクリックしたところ、すぐに2つのドロップダウンメニューでデータの処理元のワークシートが表示されていました。問題の原因を突き止めた後、すぐにワークブック内のデータを更新できました。問題が解決しました...

1
Hisham Koya

要約するために(そして私がちょうど遭遇した答えを追加するために)、見てください:

  • 数式( "["を検索)
  • ネームマネージャ
  • 隠されたワークシート
  • 条件付き書式設定を持つセル
  • データ検証済みのセル
  • オブジェクト
  • マクロを呼び出すボタン(つまり、このワークブックではそのマクロですか?)

どのシートでも、最後の3つはF5 - > "Special ..."で簡単に到達できます。

ファイルを保存して閉じてから再度開き、[リンクの編集]リストを更新します。そうしないと、ソースが正常に削除されてもリンクが表示されることがあります。

ブルートフォース方式では、ワークブックのコピーを作成し、不審なオブジェクト、ボタン、さらにはワークシートを1つずつ削除し、[リンクの編集]ウィンドウに問題のあるリンクがなくなったことを確認します。

0
Shawn V. Wilson

Excel 2010以降の場合は、次の手順に従います。

  1. オプションコマンドをクリックします。
  2. 次にAdvancedを押してください。

セクションGeneralの下

  1. [自動リンクの更新を要求する]チェックボックスをオフにします。

注意:[自動リンクの更新を要求する]チェックボックスをオフにすると、リンクは自動的に更新されます。そしてそのようなメッセージは現れません。このオプションは現在のユーザーにのみ適用され、同じワークブックの他のユーザーが影響を受けない場合、現在のユーザーが開いているすべてのワークブックに影響します。

他の方法はコマンドを使ってリンクを更新することです、これらのステップに従ってください。

Excel 2010以降

[データ]タブの[接続]グループで[リンクの編集]をクリックします。

値の更新をクリックしてから閉じるをクリックします。

これがお役に立てば幸いです。

0
Rajesh S

Excelスプレッドシートにリンクする検証規則を見つけるための簡単なマクロを書きました。

Public Sub FindExtValidation()

    Set s1 = ActiveSheet        
    Set v1 = s1.Cells.SpecialCells(xlCellTypeAllValidation)
    For i = 1 To s1.UsedRange.Rows.Count
        For j = 1 To s1.UsedRange.Columns.Count
            If Not Intersect(v1, s1.Cells(i, j)) Is Nothing Then
                If InStr(s1.Cells(i, j).Validation.Formula1, ".xl") > 0 Then
                    s1.Cells(i, j).Activate
                    Exit Sub
                End If
            End If
valid_error:
        Next
    Next
End Sub

現在のシートに検証がまったくない場合は失敗します。どのようにそれを修正するかわからない、本当に試すのに十分気にしないでください。

0
PhilHibbs