A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは。
大変失礼しました。私は、質問を読み違えてしまいました。
変更したのは、下の部分のOpenFiles の部分だけです。
これで様子をみてください。
'//
Sub RemoveHeperlinkObject()
Const mPATH As String = "C:\Users\[UserName]\My Documents\Test1\" '行末には¥を入れること
Dim FName As String
FName = Dir(mPATH & "*.xls?", vbNormal)
Do While FName <> ""
If FName <> "." And FName <> ".." Then
If (GetAttr(mPATH & FName) And vbNormal) = vbNormal Then
Call OpenFiles(mPATH & FName)
End If
End If
FName = Dir
Loop
End Sub
'//
Sub OpenFiles(ByVal fn As String)
Dim flg As Boolean
Dim ar As Variant
Dim n As Variant
With Workbooks.Open(fn) 'これ以下変更
ar = .LinkSources(Type:=xlLinkTypeExcelLinks)
If Not IsEmpty(ar) Then
For Each n In ar
.BreakLink Name:=n, _
Type:=xlLinkTypeExcelLinks
Next
End If
If .Saved = False Then
.Save
End If
.Close False
flg = False
End With
End Sub
'///
No.1
- 回答日時:
あくまでも、リンクだけを取り去ればよいのですね。
文字は、そのままです。もし、ファイル数が多い場合は、On Error トラップを設けて、エラーで止まらないようにしますが、今回は、少ないのでそのままにしています。なお、編集されたかどうかは、タイムスタンプを見れば分かります。編集されていないファイルは、タイムスタンプは前のままです。'//
Sub RemoveHeperlinkObject()
Const mPATH As String = "C:\Users\[UserName]\My Documents\Test1\" '行末には¥を入れること
Dim FName As String
FName = Dir(mPATH & "*.xls?", vbNormal)
Do While FName <> ""
If FName <> "." And FName <> ".." Then
If (GetAttr(mPATH & FName) And vbNormal) = vbNormal Then
Call OpenFiles(mPATH & FName)
End If
End If
FName = Dir
Loop
End Sub
Sub OpenFiles(ByVal fn As String)
Dim sh As Worksheet
Dim hyp As Hyperlink
With Workbooks.Open(fn)
For Each sh In .Worksheets
For Each hyp In sh.Hyperlinks
hyp.Delete
Next hyp
Next sh
If .Saved = False Then
.Save
End If
.Close False
End With
End Sub
'///
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) エクセルのマクロについて教えてください 物件ごとのフォルダを作成してます そのフォルダ内にサブフォル 2 2023/07/02 17:58
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Access(アクセス) Access VBA を利用して、フォルダ内のファイルの名称を変更したい 1 2023/08/03 08:27
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
Excel VBA シート保存時のリンク解除について
Excel(エクセル)
-
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
エクセルで数式は残したまま他シートからのリンクを一括で外す方法
Excel(エクセル)
-
-
4
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
5
EXCELマクロでブック内のリンク状態を取得する方法
Excel(エクセル)
-
6
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
ダブルクリックで貼り付けた画像からリンクのみ削除し、画像を残したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAでセルに入力したパ...
-
excelに貼り付けた数値が勝手に...
-
VBAで複数エクセルシート内のセ...
-
エクセルからスキャナVBAで連動...
-
PDF ファイルが開けません。
-
エクセルを選択して開き印刷す...
-
Excelでリンクを使用すると#N/A...
-
EXCELのマクロを使って、テキス...
-
Teraマクロで日付ディレクトリ...
-
=CELL("filename")で取得したフ...
-
【マクロ】2回実行したら、エ...
-
ローマ字→カタカナへ変換(エク...
-
マクロ 実行ボタンを押さずに...
-
EXCELのセルへ、デジタル時計を...
-
Excelを開いた時に表示さ...
-
Excel VBA のdebug(F8キー) が...
-
エラーになってないのにVBA...
-
Wordで「原稿用紙○枚」を換算す...
-
複数ファイルにある特定のシー...
-
コマンドボタンで「終了ボタン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAでセルに入力したパ...
-
excelに貼り付けた数値が勝手に...
-
EXCELのVBAで画像を選んだ順に...
-
Teraマクロで日付ディレクトリ...
-
エディタで効率的な切り出し方法
-
excel INDIRECT 他ファイル参照
-
VLOOKUP関数とネットワークに置...
-
エクセル 一括リンクの解除
-
エクセルからスキャナVBAで連動...
-
ハイパーリンクで前回値をひき...
-
ファイルを並び替えるときの「...
-
EXCELで複数のファイルから抽出
-
EXCEL VBA ー 同一フォルダ内の...
-
EXCELファイルが開けない(-_-;)
-
CSVで文字化けしてしまうのを直...
-
Excel VBAで自動的にハイパーリ...
-
PDF ファイルが開けません。
-
エクセルファイルから指定した...
-
EXCELのマクロを使って、テキス...
-
ファイルが無いときにエラーメ...
おすすめ情報
ありがとうございます!
すみません、リンクも色々あるかもしれません。
マクロの記録で確認したところ、以下のようにでましたので、Breaklinkを使用するようです。
どのように修正すればよいか教えて頂けますと幸いです。
ActiveWorkbook.BreakLink Name:= _
"\\○○\○○.xlsx" _
, Type:=xlExcelLinks