JavaScript の配列を VBScript の配列として使うには?

ショコラ
ショコラ

JavaScript の配列を VBScript の配列として使うには?

VBScript の Eval で配列を作ってキメマス。

もっさん先輩
もっさん先輩
// JavaScript の配列を VBScript の配列に変換します。
function VBArray(arr) {
  var vbs = new ActiveXObject('ScriptControl');
  vbs.Language = 'VBScript';
  return vbs.Eval('Array('+ arr +')');
}

使い方

var field_info = [];
for (var i=0; i<100; i++) {
  field_info.push('Array('+i+',2)'); // FieldInfo 2:xlTextFormat
}
field_info = VBArray(field_info.join(','));

シチュエーション

  • JavaScript(JScript)からエクセルの OpenText メソッドを呼び出すとき、FieldInfo の項目に JavaScript の配列を渡したところエラーになってしまった。
  • VBScript でなく JavaScript(JScript)でエクセルを制御したい。
Scroll to Top