カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

ApplyFilter

Filter機能では条件の複数指定ができないようなので、代わりにApplyFilterを使用

構文  expression.ApplyFilter(FilterName, WhereCondition)

設定項目 内容
expression DoCmdオブジェクト[省略不可]
FilterName フィルタ名またはクエリ名を文字列式で指定[省略可能]
WhereCondition SQL文のWHERE句を文字列式で指定[省略可能]

例)

'日付が2003年1月1日から2003年12月31日までのデータを抽出
DoCmd.ApplyFilter , "sales_date between #2003/01/01# and #2003/12/31#"

フィルターを解除
Me.FilterOn = False
4,438 views

環境変数(Environ)

VisualBasicでWindowsの環境変数を利用する方法をご紹介します。

例)Explorerなどを起動する

Call Shell("explorer")

実行ファイル名(拡張子を除く)のみでOK。パスは環境変数Pathから取得してくれます。

その他の環境変数の取得

書式

Environ("環境変数名")

Windowsディレクトリ
※WindowsディレクトリはOSによって「windows」や「winnt」などと違いがあるので注意

Environ("windir")

ユーザーディレクトリ

Environ("userprofile") 'C:\Documents and Settings\Administrator

ProgramFilesのパス

Environ("ProgramFiles") 'C:\Program Files

CommonProgramFilesのパス

Environ("CommonProgramFiles") 'C:\Program Files\Common Files

Application Dataディレクトリのパス

Environ("appdata") 'C:\Documents and Settings\Administrator\Application Data

環境変数名はマイコンピュータのプロパティからも調べられますが、
コマンドプロンプトで「set」コマンドを引数なしで実行するほうが早いです。

「set」コマンドを実行すると、環境変数とその値が出力されます。

3,868 views

DNSキャッシュのクリア

コマンドプロンプトで

c:\> ipconfig /flushdns

を実行

Windows IP Configuration

Successfully flushed the DNS Resolver Cache.

と表示されればOK

2,483 views

要素数の初期化なしに配列を生成(Listクラス)

予め要素数が決まっている場合は始めから配列を使用しますが、
可変の要素数の場合は、Listクラス(コレクション)を使用します。

using System.Collections.Generic;

// 型を指定して宣言
List<int> list = new List<int>();

// Addメソッドで値を追加
list.Add(0);

// ToArrayメソッドで配列化
int[] f = list.ToArray();
1,700 views

再帰を使わずにディレクトリをコピー(Queueクラス)

// Queueクラスを使用したコピー(再帰を使用しない方法)
Queue q = new Queue();
q.Enqueue(RootDirectory);

while (q.Count > 0)
{
    DirectoryInfo sourceDirectory = (DirectoryInfo)q.Dequeue();
    Target = sourceDirectory.FullName;

    foreach (string file in Directory.GetFiles(Target, pattern))
    {
    	//ここに各ファイルに対する処理を記述
    }

    DirectoryInfo[] dirs = sourceDirectory.GetDirectories();
    foreach (DirectoryInfo s in dirs)
    {
        q.Enqueue(s);
    }
}
// Queue : wrapper
2,044 views