Page 619 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼VBAを全て削除したいのですが Nao 03/1/27(月) 22:43 ┗Re:VBAを全て削除したいのですが りん 03/1/28(火) 7:46 ┗Re:VBAを全て削除したいのですが ぴかる 03/1/28(火) 10:09 ─────────────────────────────────────── ■題名 : VBAを全て削除したいのですが ■名前 : Nao ■日付 : 03/1/27(月) 22:43 -------------------------------------------------------------------------
見積もりをエクセルで作っているのですが、その中にユーザーホームを作りいろいろとボタンを作ってVBAを実行できるようにしています。 見積もり書を作成して保存する時に、ユーザーフォームの中に"保存"ボタンを作って別名保存をしたいのですが、その時に別名保存側のVBAを全て削除したいのですが データーを軽くしたいのと、マザー側だけVBAができる様にしたいのです。 よろしくお願いします。 |
Nao さん、おはようございます。 >その時に別名保存側のVBAを全て削除したいのですが V3の過去ログ(消失)をちょっと修正。 Sub Test() Dim wb As Workbook, vbc As Object Set wb = ActiveWorkbook 'ここでマクロを削除するブック指定 ' If MsgBox("マクロ削除します", vbOKCancel, wb.Name) = vbOK Then If wb.Name <> ThisWorkbook.Name Then Nmax% = wb.VBProject.VBComponents.Count For NN% = Nmax% To 1 Step -1 Set vbc = wb.VBProject.VBComponents(NN%) With vbc.CodeModule If vbc.Type < 100 Then 'モジュール(標準・フォーム)は無条件で削除 wb.VBProject.VBComponents.Remove vbc Else 'イベントプロシージャは見つかったら削除 If .Countoflines > 0 Then .DeleteLines 1, .Countoflines End If End With Next End If Set vbc = Nothing End If End Sub こんな感じです。 いらないもの(MsgBox)が付いていたので消しました。 |
Naoさん、りんさん、おはようございます。 その見積書シートのみを新規ブックにコピーして保存するのもひとつの手段と思います。 こういうのも結構、お手頃かも?。 |