|
VB初心者で、初めてマクロのついたファイルを作っています。
別シートでエラー表示が出るのをどうにかしたいのですが、
何か方法はあるのでしょうか。ないのでしょうか。
ファイルは、こんな感じです。↓
まず、ひとつのファイルに12月までの12シートが有ります。
各シートまったく同じ表が同じ場所にあり、
前月に入力した内容が次月に反映されるようになっています。
毎月この表に記入していくわけですが、
次月に繰り越さなくていい行は消したいので、そこでマクロを活用しました。
まずA列に1〜6の数値を入力してもらうことにしてあるので、
前月のシートで1〜3だった場合、次月にはA列の同じ場所に「消」という字が出るようにIF関数を入れました。
そして、次月シートに『削除ボタン』を作成し、「消」行のみを削除するようにマクロを入れました。
このマクロについては成功し、「消」行だけクリアされます。こういうマクロです。
Sub clear()
Dim lngRow As Long
Dim lngCount As Long
lngRow = Cells(Rows.Count, 1).End(xlUp).Row
For lngCount = lngRow To 2 Step -1
If Cells(lngCount, 1).Value = "消" Then Rows(lngCount).Delete
Next
End Sub
しかし、次次月のシートをみると、今消した行だった場所にエラー表示(#REF!)が出てしまいます。
どうやら「そこのセルがなくなった〜」と認識しているみたいなのですが…。
こういう場合、どこから直すべきでしょうか。
削除マクロの削除方法を変えればいいのか、「消」以外にエラー表示も消せるように設定するのか、それとも次次月のセルに存在する行だけ認識してもらうようにするのか(その方法も不明ですが…)
長い質問文ですが、誰か教えていただけないでしょうか。
|
|