[vbaエラー]MS-Access mdb(32bit)をWindows10(64bit)で動かすとエラー祭り!

edi出荷検品用タッチパネルWindowrs10(32bit)が突然死。
秋葉で代替機Windows10 pro(64bit) を買ってAccess mdbソフト(32bit)を動かすと

エラー祭り

早く安定させないと
EDI受信・出荷検品が出来ない!

怒られる

秋葉で買った中古タッチパネルPC


エラー1
Declareを、Declare PtrSafeに一括置換すれば解決

vba64bitエラー発生

エラー2:型違い
rs.RecordCount(64bit)の型は、LongLongなの!?

VBA32bitをWindows64bitで使ったら「型違いエラー」

多用してるこんな感じのScript

Dim i As Long
i = rs.RecordCount

If i = 0 Then
    MsgBox "該当データ無し"
Endif

全該当箇所を、こう書き換えたらエラーが消えた(=減った)

Dim i As LongLong
i = rs.RecordCount

If i = 0 Then
    MsgBox "該当データ無し"
Endif

エラー3:共有フォルダーが見えない!
そんな時は、SMB1.0(Server Message Block v1.0)を有効化

[意外な落とし穴があるかも SMB1廃止のメリットとデメリットを考える]

Windows10で共有フォルダーが見えなくなった時、SMB1.0をON

エラー4:ロングパス名?ショートパス名?

ショートパスは、DOS時代のファイル名8.3文字用ソフトとの下位互換の仕組み。

vbaから実行するコマンドラインプログラムの一部が動かない!

ある機能は、ショートパス名で実行できた。
でも、一部機能はロングパス名に書き換えないと動かない。

なんで?

windowsショートネームの話

とりあえず代替機、完成!

これで、C社EDI取れます

経費削減のため、なんでも社内でやってます

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA