OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

EXCEL2000 VBA ツールバー および セルの入力制限について

  • すぐに回答を!
  • 質問No.223448
  • 閲覧数122
  • ありがとう数0
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 12% (4/33)

ツールバーの印刷、マクロ、保存、書式の変更をツールバーを消さずに
封じるには、どうしたらよいですか?

また、数値・通貨の書式のセルに、数値や通貨以外が入力されているときに
VBAがこけてしまうので、制御をかけたいのですが、どのようにすれば
よいですか?

ご存知の方、教えてください。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル9

ベストアンサー率 60% (35/58)

ツールバーですか?「書式」も質問に入っているので
メニューバーの話と理解しました。
メニューバーから、ファイル(F)の保存・上書き保存・印刷、書式、ツール(T)のマクロを選べなくする1つの方法です。

Sub auto_open()
'
Dim tmpCBar As CommandBar
Dim tmpCMenu As CommandBarControl

Set tmpCBar = Application.CommandBars("Worksheet Menu Bar")
Set tmpCMenu = tmpCBar.Controls("ファイル(&F)")
With tmpCMenu
.Controls("上書き保存(&S)").Enabled = False
.Controls("名前を付けて保存(&A)...").Enabled = False
.Controls("印刷(&P)...").Enabled = False
End With
tmpCBar.Controls("書式(&O)").Enabled = False
Set tmpCMenu = tmpCBar.Controls("ツール(&T)")
With tmpCMenu
.Controls("マクロ(&M)").Enabled = False
End With
'
End Sub

Sub auto_close()
'
Application.CommandBars("Worksheet Menu Bar").Reset
'
End Sub

あと、VBAがこけるのを制御するときは、on error 文を
使います。
制御をどうしたいかによりますので、あとはヘルプを参照してください。
補足コメント
Neigh

お礼率 12% (4/33)

VBAがこけ場合、exit sub をしたいのです。

どこでこけるかというと
acount(0) = Format(Cells(i + 1, 6).Value) * Format(Cells(i + 1, 7).Value)
acount(1) = acount(0) + acount(1) '原価*数量=部品原価
acount(2) = Format(Cells(i, 6).Value) * Format(Cells(i, 7).Value)
acount(3) = acount(2) + acount(3) '売上単価*数量=部品代
acount(4) = Format(Cells(i, 9).Value)
acount(5) = acount(4) + acount(5) '工賃(売上)
acount(6) = Format(Cells(i + 1, 9).Value)
acount(7) = acount(6) + acount(7) '工賃(原価)

というような計算式において、数値が入力されていないと
計算ができず、こけてしまいます。
投稿日時 - 2002-02-23 21:47:54
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ