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

ナビゲーションウィンドウを非表示にする

ACCESSにて、コードでリンクテーブルを設定した時など、非表示にしていたナビゲーションウィンドウが表示されてしまうことがあります。
以下のコードを実行するとナビゲーションウィンドウを再び非表示にすることができます。

DoCmd.NavigateTo "acNavigationCategoryObjectType", ""
DoCmd.RunCommand acCmdWindowHide

また、逆に表示したいときは以下のようにします。

DoCmd.NavigateTo "acNavigationCategoryObjectType", ""
DoCmd.RunCommand acCmdWindowShow
6,303 views

データ競合のエラーを無視する

ACCESSで発生したデータ競合のエラーを無視するにはエラーイベントに
以下のような記述をします。

Private Sub Form_Error(DataErr As Integer, Response As Integer)

    If DataErr = 7787 Then
         Response = acDataErrContinue
    End If

End Sub

「7787」はデータ競合エラーのエラー番号

定数「acDataErrContinue」の値は「0」です。

これで競合エラーを無視した場合は、[他のユーザーによる変更を反映]を
選択したのと同じ扱いになります。

5,414 views

ACCESS フィルター VBA

よく使うので覚書

Private Sub Search()
On Error Goto Exception

    Dim Coll  As Collection
    Dim SQL() As String

    Set Coll = New Collection


    If Not IsNull([検索テキスト]) Then
        Coll.Add "[フィールド1] Like '*" & [検索テキスト] & "*'"
    End If

    If [検索チェック] = -1 Then
        Coll.Add "[チェックフィールド] = " & [検索チェック]
    End If

    If [検索チェック2] = 0 Then
        Coll.Add "[チェックフィールド2] = 0"
    End If


    If Coll.Count > 0 Then
        For i = 1 To Coll.Count
            ReDim Preserve SQL(i - 1) As String
            SQL(i - 1) = Coll(i)
        Next i
        DoCmd.ApplyFilter , Join(SQL, " And ")
        'Debug.Print Join(SQL, " And ") '確認用
    Else
        Me.FilterOn = False
    End If

Exit Sub
Exception:
    MsgBox Err.Description
End Sub
2,075 views

CSVエクスポートでのテキストデータのNull値について ACCESS

AccessでCSVをエクスポートする際、テキスト型のフィールドがNullだった場合、
「,””,」とならず「,,」となってしまいます。
※前後にフィールドがあるとしています。

他のソフトやプログラムで該当ファイルを使用するときに、ダブルクォーテーション「”」が
必要な場合があります。

そういう時はNz関数を使います。
Nz関数はNullを別の文字列に置き換えしてれくる関数です。

データがNullだった場合、「,””,」という結果にするためには、Nullを長さゼロの文字列に置き換えます。

Nz([フィールド名],"")

もちろん、指定したフィールドのデータがNullでない場合はそのデータを返します。

14,434 views

Accessからはできないフリガナの割り付け

WindowsXPでは[Excelオブジェクトを使用してフリガナ入力]で紹介しているように、Accessだけで可能だったフリガナ変換が、Windows7では出来なくなっていました。
色々と方法を模索してはみたものの、解決策が見つかっていませんでした。

そして今日、なんとなく改めて挑戦してみると…なんと!(それほど大したことではありませんが;)方法が見つかりました!
といっても結局、Accessだけではできない、というのが結論です。
つまりExcelを使って実装することになります。

PHONETIC

まず、Excelの「PHONETIC」という関数。
これはセルに入力した文字のフリガナを取得することができます。

例としてこのようなExcelを用意してみます。
001
続きを読む…»

5,016 views