文字列の多次元配列を使用してExcelシートを埋めようとしていますが、数式を挿入するときに問題が発生しました。次の小さなケースは、問題を示しています。
Dim tA(3, 3) As String
tA(1, 1) = "=HYPERLINK(""www.stackoverflow.com"")"
tA(1, 2) = "=HYPERLINK(""www.stackexchange.com"")"
tA(2, 1) = "=2+5"
tA(2, 2) = "Normal Text"
worksheet.Range(worksheet.Cells(1, 1), worksheet.Cells(4, 4)).Value = tA
このコードが評価されるとき、Excelシートはハイパーリンクを自動的に変換したり数式を評価したりしません。つまり、Excelを見ると、(2,1)のセルには、必要に応じて「7」ではなく「= 2+5」と表示されます。コマンドが存在するかどうかを確認するためにすべてのセルを評価するようにExcelに強制する方法はありますか?
個々のセルにコマンドを挿入すると、適切に評価されることに注意してください。ただし、数千のセルがあり、一度に1つずつ入力するのは数桁遅いため、これはオプションではありません。