会社の書類を管理印刷するマクロを作っていて今ぶつかっている壁。
エクセルでバーコードが正しく印刷されない!!!
1回目は正しく印刷されるものの、2回目以降はバーコードの値が更新されているにもかかわらず、印刷結果は1回目のバーコードとまったく同じものが印刷されてしまう・・・。シートを見てみると、画面上では正しく更新されているのに、印刷内容は1回目の値・・。なぜ?!
他のサイトでバーコードコントロール(※このコントロール自体はACCESSに付属のもの)の表示や更新の時に一度非表示にしてから・・・とか書いてあってので、いろいろ試してみたがだめだった。
以下、試してみたもの。
1:バーコードコントロールのLinkedCellの値を更新
2:.Shapes("BarCodeCtrl1").Visible = False
3:.Shapes("BarCodeCtrl1").Visible = True
まずこれはダメだった。
次。
1:.Shapes("BarCodeCtrl1").Visible = False
2:バーコードコントロールのLinkedCellの値を更新
3:.Shapes("BarCodeCtrl1").Visible = True
これもダメだった・・・・。
ここで思い浮かんだのが、マクロの先頭に書いたこの命令。
Application.ScreenUpdating = False
これか!!!
ということで試してみた。
1:Application.ScreenUpdating = True
2:.Shapes("BarCodeCtrl1").Visible = False
3:バーコードコントロールのLinkedCellの値を更新
4:.Shapes("BarCodeCtrl1").Visible = True
5:Application.ScreenUpdating = False
きた!
画面上できちんと更新されたじゃん!
と思って印刷結果を見てみたら・・・・3枚印刷してどれもバーコードは一緒・・・。
これはどうしたものか・・。
とりあえず今日戻ってきてからまた考えます。