|
一例をあげると IV1セルとか、ファイルのプロパティのコメント欄に、
フラグを立てておくという方法が考えられます。
[ThisWorkbookモジュール]
Private Sub Workbook_Open()
ThisWorkbook.Comments = "False"
End Sub
[Sheet1のWorksheetモジュール]
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Address <> "$C$4 Then Exit Sub
If .Count > 1 Then Exit Sub
If IsEmpty(.Value) Then Exit Sub
If ThisWorkbook.Comments = "False" Then
Application.EnableEvents = False
.ClearContents
Application.EnableEvents = True
End If
End With
End Sub
[標準モジュール]
Sub MyFolder()
Dim objShell As Object, objFolder As Object
Dim FolN As String
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell _
.BrowseForFolder(0, "フォルダを選択して下さい", 0, "C:\")
If objFolder Is Nothing Then
Set objShell = Nothing: Exit Sub
End If
FolN = objFolder.Items().Item().Path
With ThisWorkbook
.Comments = "True": Range("C4").Value = FolN
.Comments = "False"
End With
Set objFolder = Nothing: Set objShell = Nothing
End Sub
これ以外にも、いろいろやり方はあると思います。
例えばシートの Protect を"パスワード付き、かつUserInterFaceOnly:=True"で
しておくとか、SelectionChangeイベントで C4 を選択したら自動的に他のセルを
アクティブにして、入力できないようにしてしまうとか・・。
ま、そのへんは気に入ったやり方を、ご自分で試してみることです。
それらは少なくとも、入力規則を設定するやり方より簡単だと思います。
|
|