Excel マクロ・VBAの勉強サイトです。 なにかと仕事で利用するExcelですが、マクロを使えば業務効率の向上に繋がります。 定型的な処理を自動で行うことができる様になります。 複数のExcelファイルから情報を取り出したり、 CSVファイルを読み込んで帳票を作成するなどですね。 マクロを利用するには、VBAというプログラム言語を学ぶ必要があります。 プログラム言語と聞くと難しいイメージですが、それほど難しくはないです。 このサイトでは、何かと役立ちそうなサンプルを載せます。
MSXML パーサーは、読み込み処理のステータスを追跡するために、大きなドキュメントの読み込み時に使用可能なイベントを公開します。これらのイベントは、インターネットを介して URL から非同期的にドキュメントを読み込む場合にも役立ちます。 URL を使用してファイルを開くには、完全な URL アドレスでファイルの場所を指定します。ファイルの場所を示すアドレスの前に http:// を付ける必要があります。 URL を使用してファイルを読み込む例を次に示します。 xDoc.async = False If xDoc.Load("http://www.develop.com/hp/brianr/cds.xml") Then ' ドキュメントの読み込みに成功しました。 ' 目的の作業を行います。 Else ' ドキュメントに読み込みに失敗しました。 End If ドキュメントの Async プロ
Excelでマクロを実行する際に知っておいた方が良いこと 長時間処理を実行する場合や、大量のデータをセルに反映するといった場合には、Excel.Applicationクラスの各種プロパティをオフにして処理を実行すると、良い事があります。 中でも重要だと思われるプロパティを以下に列挙しました。 1. 警告表示の有効・無効(シート削除時などの警告ダイアログなど) DisplayAlerts 2. マクロ実行中のEscキーの有効・無効 EnableCancelKey 3. イベントの有効・無効 EnableEvents 4. マウスカーソルの形状 Cursor 5. 画面更新の停止有無 ScreenUpdating 6. Excelワークシートの計算方式 Calculation 上記のプロパティたちは、例えば以下のように、関数の開始と終了時にフラグのオンとオフの切り替えを行います。 リスト1 P
**メモ: ** Type が 8 の場合、Set ステートメントを使用して結果を Range オブジェクトに割り当てる必要があります。次に例を示します。 Set myRange = Application.InputBox(prompt := "Sample", type := 8) 次の例では、ユーザーにコピーの数を入力するよう要求するメッセージを表示し、アクティブ ワークシートをその数だけ印刷します。メソッドが数値を要求するよう型で指定することに注目してください。 Sub PrintActiveSheet() Dim TotalCopies As Long, NumCopies As Long Dim sPrompt As String, sTitle As String sPrompt = "How many copies do you want?" sTitle = "Pri
2007/12/423:3 【Excel】VBAで入力規則を設定する 別のセルの入力値によって、入力規則を変更したい場合がある。 そういった場合には、VBAで動的に入力規則を切り替えれば良い。 入力規則を変更したい場合の例 ・フォルダ選択した場合に、フォルダ内のファイル名を入力規則とする。 ・Excelファイルを選択した場合に、ファイル内のシート名を入力規則とする。 以下、サンプル。 【やりたいこと】 A1セルの入力規則に"あああ,いいい,ううう"を設定する。 【サンプル】 Sub Main() Sheets(1).Range("A1").Select With Selection.Validation .Delete .Add Type:=xlValidateList, _ AlertStyle:=xlValidAlertStop, _ Operator:= xlEqual, Formu
MS Access Tips/Sample and VBA and Blog customize etc... 現在,定期的に更新する内容のテーブルを使用しています. 各個人の情報の一つなのですが,過去との比較を行うため定期的に更新しているのですが,入力項目を一から入れ直しているのが現状です. そこで,できることなら、新規レコードを入力する際に,過去の入力を反映させた状態で開くことができれば,変更項目の入力だけで,さらに利便性が得られるように思っております. AccessClubの掲示板の 新規レコードに古いレコード内容を反映した状態で開く の質問です。 これを実現するには、次の3つのことが必要になります。 前回値(直近の日付のデータ)を取得 新規データを入力するフォーム 開いたときに既定の値を表示する 方法はいろいろ考えられますが、今回は、初心者掲示板用にVBAは最小限のみの使用で実現す
2023-05-30 ゆいんご : カレント行の背景色の変更 その3-re:代替の背景色 2023-05-11 S Kamimura : VBAでミリ秒以下の高精度で処理時間計測-Dr 2023-04-24 macco : コンボボックスのリストを入力値で制限する-イベントプロシージャ 2021-11-26 のり : 印刷プレビューに[印刷][閉じる]ボタンを付加する関数-改良版- 2021-11-26 hatena : 印刷プレビューに[印刷][閉じる]ボタンを付加する関数-改良版- 2021-11-26 のり : 印刷プレビューに[印刷][閉じる]ボタンを付加する関数-改良版-EXCEL出力ボタンを配置したい 2021-10-28 佐藤 : フォーム上のコントロールのサイズを拡大/縮小する関数- 2021-10-22 とらもく : 複数条件の抽出フォームの設計 その3- 2021-10
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
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
またもや「Excel VBAと関係ねぇじゃねーか!」と言われそうですが、今回はMS-DOSコマンドの標準出力を変数に取得する方法を解説します。これはもう、Excelとは関係ないVB系のネタなんですね。ただ実行環境がExcelってだけで(^^; ま、いーや書いちゃえ。MS-DOSって何のことだかわからない人は、自分で調べてください(^^; なお、ここではWindows XP Home Editionを例に解説します。 MS-DOSのコマンドには今でも便利に使えるものが多いですし、何よりネットワークを管理されている方は必須コマンドです。VBやVBAからMS-DOSコマンドを実行するときには、問題が2つあります。1つめはShell関数で起動できないことです。MS-DOSコマンドはいわゆるDOS窓で起動する仕組みになっていますので、Shell関数では起動できません。2つめの問題は、実行結果もDOS
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く