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

VBA DAOでレコード件数の取得

DAOでレコード件数を取得するには、一度MoveLastメソッドを実行しないといけないようです。
※DAO Object Libraryは参照なし

Dim rst As Object

Set rst = Me.Recordset

rst.MoveLast
MsgBox "レコード件数:" & rst.RecordCount

Set rst = Nothing
8,918 views

巡回冗長検査CRCエラー

フロッピーからデータをコピーしようとすると、巡回冗長検査CRCエラーというエラーが発生した。

修復するには、マイコンピュータで3.5インチFDを右クリックしプロパティを表示
ツールのエラーチェックで「ファイルシステムエラーを自動的に修復する」「不良セクタをスキャンし、回復する」の
両方にチェックを入れて実行

終了したらコピーできるようになりました。

原因としてはディスクの読み取り不良や誤り制御の失敗、
ディスクの傷や汚れによる読み取り不良、ファイルの焼き込みミスやコピープロテクト、空き領域の不足などがあるようです。

5,067 views

ACCESS VBA テーブルの削除

テーブルの一覧を取得し、削除します。
※DAO参照はなしで実行できるようにしています。

Dim tbls As Object 'DAO.TableDefs
Dim tbl  As Object 'DAO.TableDef

'テーブル一覧取得
Set tbls = CurrentDb.TableDefs

Dim DelTables As Collection

Set DelTables = New Collection

For Each tbl In tbls

	'「MSys」で始まるテーブルはシステムテーブルなので省きます
    If Not tbl.Name Like "MSys*" Then
        DelTables.Add tbl.Name
    End If

Next

For i = 1 To DelTables.Count
    'テーブル削除
    tbls.Delete (DelTables(i))
Next

MsgBox "削除件数=" & DelTables.Count
10,080 views

nslookup

nslookup [set [command option]] [ドメイン名(正引き)またはIPアドレス(逆引き)] [DNSサーバー名]

オプションなしで実行すると対話モードになります。

検索レコード種別を入力

set type=soa
set type=mx
set type=ns
set type=a

ドメインを入力

domain.jp

--[結果が出力されます]

対話モードを終了する

exit
2,852 views

ACCESS CSVデータインポート時の文字コード

TransferTextメソッドにて、テーブルにCSVデータをインポートする際、
文字コード(CodePage)を指定してインポートすることができます。

最後の引数[CodePage]を省略すると、シフトJISで読み込まれます。

DoCmd.TransferText acImportDelim, , _
    "テーブル名", "ファイルパス", True, , 932   'Shift_JIS

DoCmd.TransferText acImportDelim, , _
    "テーブル名", "ファイルパス", True, , 51932 'EUC-JP

DoCmd.TransferText acImportDelim, , _
    "テーブル名", "ファイルパス", True, , 65001 'UTF-8

DoCmd.TransferText acImportDelim, , _
    "テーブル名", "ファイルパス", True, , 50220 'JIS

CSVデータエクスポート時も同様です。

こちらに参考になる表があります。
http://www.atmarkit.co.jp/fdotnet/dotnettips/013enumenc/enumenc.html

42,644 views