Excel マクロ・VBAの勉強サイトです。 なにかと仕事で利用するExcelですが、マクロを使えば業務効率の向上に繋がります。 定型的な処理を自動で行うことができる様になります。 複数のExcelファイルから情報を取り出したり、 CSVファイルを読み込んで帳票を作成するなどですね。 マクロを利用するには、VBAというプログラム言語を学ぶ必要があります。 プログラム言語と聞くと難しいイメージですが、それほど難しくはないです。 このサイトでは、何かと役立ちそうなサンプルを載せます。
VBAでJScriptのArrayオブジェクトのメソッドを使ってみるサンプルです。 サンプルではSliceメソッドを使用してみています。 Sub JSArraySample() Set objJS = CreateObject("ScriptControl") With objJS .Language = "JScript" .AddCode "function JSSplit(s,d){return s.split(d);}" .AddCode "function JSArrayLength(a){return a.length;}" End With 文字列 = "a,b,c,d,e" Set b = objJS.CodeObject.JSSplit(文字列, ",") Cells(1, 1).Value = b.slice(0, 1) Cells(1, 2).Va
VBScriptにはEscape()、JScriptにはescape()があります。しかし、VBAにはありません。:-( そこで、VBAからJScriptのescape()を利用します。 Set sc=CreateObject("scriptcontrol") sc.Language="jscript" MsgBox sc.CodeObject.escape(Text) VBScriptの場合は直接呼べないので、JScriptがよいでしょう。 JScriptなら、Globalオブジェクトのメソッドが直接呼べます。 escape メソッド | eval メソッド | isFinite メソッド | isNaN メソッド | parseFloat メソッド | parseInt メソッド | unescape メソッド encodeURI メソッド | encodeURIComponent メ
発端 VBAで正規表現を使おうとした場合、参照設定などしないといけなかったりと、わりと面倒です。そこで、JScriptの正規表現を使ってしまうことで解決しようというのが今回の試みです。 ソース 'スクリプトエンジンを宣言(JScript) Set js = CreateObject("ScriptControl") js.Language = "JScript" 'スクリプトを定義する(JScript) Dim script As String script = "'abcdefg'.match(/a/)" 'ヒットした文字を出力 Dim result As String result = js.eval(script) MsgBox result 解説 js.eval(script) の結果、正規表現 /a/ にマッチした文字列が result に代入されます。 参照 VBAからJScr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く