Код, который вы опубликовали, создает полный HTML-документ с таблицей из трех строк для каждой строки массива. Следующий фрагмент выведет одну строку:
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(1, intCount) &"</td>"
document.write "<td>"& arrData(2, intCount) &"</td>"
Повторение этого фрагмента 3 раза повторяет строку 3 раза в выводе.
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(2, intCount) &"</td>"
document.write "</tr>"
document.write "<tr>"
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(1, intCount) &"</td>"
document.write "<td>"& arrData(2, intCount) &"</td>"
document.write "</tr>"
document.write "<tr>"
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(1, intCount) &"</td>"
document.write "<td>"& arrData(2, intCount) &"</td>"
Только у вас есть опечатка во 2-м операторе, которая заставляет первое поле выводиться дважды в первой строке.
В основном есть 2 способа решения проблемы:
Выполните цикл только для строк таблицы, а не для всего документа, и выведите только одну строку в теле цикла:
document.write "<!DOCTYPE html>"
document.write "<html>"
...
document.write "<p>Test</p>"
document.write "<table style='width:50px'>"
For intCount = LBound(arrData) To UBound(arrData)
document.write "<tr>"
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(0, intCount) &"</td>"
document.write "<td>"& arrData(2, intCount) &"</td>"
document.write "</tr>"
Next
document.write "</table>"
document.write "</body>"
document.write "</html>"
Это рекомендуемый способ.
Удалить цикл и повторить операторы, увеличивая при этом индекс строки самостоятельно:
document.write "<td>"& arrData(0, 0) &"</td>"
document.write "<td>"& arrData(1, 0) &"</td>"
document.write "<td>"& arrData(2, 0) &"</td>"
document.write "</tr>"
document.write "<tr>"
document.write "<td>"& arrData(0, 1) &"</td>"
document.write "<td>"& arrData(1, 1) &"</td>"
document.write "<td>"& arrData(2, 1) &"</td>"
document.write "</tr>"
document.write "<tr>"
document.write "<td>"& arrData(0, 2) &"</td>"
document.write "<td>"& arrData(1, 2) &"</td>"
document.write "<td>"& arrData(2, 2) &"</td>"
Я не рекомендую такой подход, потому что он не может обрабатывать различное количество строк в массиве без изменения кода.