私は理解できない狂った問題に遭遇しましたが、まだ回避策を見つけられませんでした。VBAは定義されたセルの代わりにテーブル全体を塗りつぶします
最初に、他のブックからの情報に応じて、ブックにさまざまなシートを埋め込むExcelマクロがあります。私は、値を表示するだけで、1つのブックの指定されたセルに値を含むWebサイトへのハイパーリンクを含める必要があります。このハイパーリンクは、特定の細胞でのみ利用可能です
=HYPERLINK("https://example.com/value","value")
を以下のように私は式を挿入しようと、その条件が真のどこにのみ表示されます。 ここで狂った部分について:通常の文字列またはintを使ってハイパーリンクを挿入するセルを塗りつぶしても、それはうまく動作し、VBAは指定したセルだけを塗りつぶします。ハイパーリンクを挿入すると、ワークシート上の列全体が塗りつぶされますが、他のすべては同じ方法で保持されます。 は、以下のコードの断片を見つけて下さい:
RequestID = Workbook1.ActiveSheet.Cells(i, 1).Text 'Request number
Workbook2.Sheets("Sheet1").Cells(y, 4) = RequestID
これはセルのみ(Y 4)予想通り正しいリクエスト数とを満たす
Workbook2.Sheets("Sheet1").Cells(y, 4) = "RequestID"
これは、セル塗りつぶし(yは、4)と文字列「RequestID」が期待どおりに
Workbook2.Sheets("Sheet1").Cells(y, 4) = "=HYPERLINK(" & Chr(34) &"https://example.com/" & RequestID & Chr(34) & "," & Chr(34) & RequestID & Chr(34) & ")"
これは正しく機能するハイパーリンクを持つヘッダーを除いて、テーブル全体を埋めます。
私は本当に理由を理解していないし、私は考えられる問題を考えることができません。たぶん誰かが私のヒントを持っているか、回避策を知っているかもしれません。
パーフェクト、これは私がそれを期待ように動作します。私はこの方法では回避策を知らなかった。どうもありがとうございました! –