- ベストアンサー
マクロでセル検索時にハイパーリンクが外れてしまう問題の解決方法
- マクロを使用してセル検索を行う際、設定していたハイパーリンクが外れてしまう問題に困っています。対処方法を教えてください。
- バージョンが2007のExcelで、マクロを使用して同一ブック内の「データ」というシートから「検索更新」というシートで検索をかけるコードを作成していますが、ハイパーリンクが外れてしまいます。どうすれば正常に機能させることができるでしょうか?
- セル検索時にマクロを使用していると、ハイパーリンクが外れてしまう問題が発生しています。解決方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>Range("B" & myLAST) = myC.Offset(0, -1) というような、つまり「A=B」というような代入は、何が コピー されているのでしょうか? Range("A" & myLAST) = myC.Row Range("B" & myLAST) = myC.Offset(0, -1) Range("C" & myLAST) = myC.Offset(0, 0) Range("D" & myLAST) = myC.Offset(0, 1) Range("E" & myLAST) = myC.Offset(0, 2) Range("F" & myLAST) = myC.Offset(0, 3) は Range("A" & myLAST) = myC.Row myC.Offset(0, -1).Resize(, 5).Copy Range("B" & myLAST) に、 With Sheets(1) .Range("B" & myC.Value) = myC.Offset(0, 1) .Range("C" & myC.Value) = myC.Offset(0, 2) .Range("D" & myC.Value) = myC.Offset(0, 3) .Range("E" & myC.Value) = myC.Offset(0, 4) .Range("F" & myC.Value) = myC.Offset(0, 5) End With Range("A" & myC.Row & ":F" & myC.Row).ClearContents は myC.Offset(0, 1).Resize(, 5).Copy Sheets(1).Range("B" & myC.Value) Range("A" & myC.Row & ":F" & myC.Row).Clear にして、「代入」ではなくて、[Copy メソッド] をお使いになられたらいかがでしょうか。 なお、「Copy」すると、書式なんかも コピー されますので、「ClearContents」ではなくて「Clear」にしてみました。 後者は「Cut」でもよいのかなとか思いましたが、数式が入っている場合には エラー値 を惹起しましょうし、「Copy」にしても、数式が入っている場合は、計算間違いを起こし兼ねません。 もし、このような場合でしたら、[Copy] した後に、再度「値」のみ コピー すればよいかと存じます。