>各行にプルダウンメニューがマクロで設定されているのですが
操作で言えば、データー入力規則ーリストに当たるものでしょうか。マクロの記録では
(A)セル範囲指定方式
Sub Macro1()
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$D$1:$D$7"
End With
End Sub
のようになります。(ただし一部削除してます)
このようにセル範囲を指定してあるのでしょうか。
(B)値を直接入力方式
またはリストに表示するアイテム(各行)の値をを直接入力して
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="as,sd,fg,hj"
End With
End Sub
のどちらでしょうか
>不要な2-3行を削除したところ
リストのアイテムを削除したのでしょうが、
(A)方式の、リスト表示データの入っているセルの一部をDELETEキーで値を削除したのでしょうか
(B)方式の、リストに出す値をプログラム中に埋め込んだ部分を
削除したのでしょうか。
>最後の1行のマクロ部分(プルダウンメニュー)だけ残って表示されてしまいました。
この状態というのをもう少し説明してみてください。
>シート全体のマクロを削除せずに、一行の部分のみ削除する方法はありますか
VBAの中で入力規則に関連する部分を削除するなら、上記のマクロ
例を基(参考)にして、どの部分のコードかを探し、コードのその部分を削除すればどうですか。
リストに表示する内容の一部を削除するのなら
(A)方式では、アイテムデータ(セル範囲とセルの値)を再作成し
Formula1:="=$D$1:$D$7"のセル範囲を修正する。
(B)方式ならFormula1:="as,sd,fg,hj"の””の中を修正
すればどうですか。
本当は、質問の補足がほしいのですが、想像も交えて書いてみました。
お礼
マクロに関して無知で全くわからなかったのですが、(A)の方法でできました。 足りない言葉にも係らず助けていただいてありがとうございました。 これを機に少し勉強しようと思いました。