I持って私のスプレッドシートVBAマクロでユーザーフォームを処理するため、次のコード:VBAグローバル変数
Option Explicit
Public saved_vocab As String
Public saved_num As String
Public saved_def As String
Public saved_ex As String
Private Sub Save_Click()
Dim low As Integer
Dim high As Integer
Dim selected As Integer
low = 1
high = Cells(1, 1).End(xlDown).Row
Range(Cells(low, 1), Cells(high, 1)).Find(what:=vocab.Text, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
selected = ActiveCell.Row
saved_vocb = Cells(selected, 1).Text
saved_num = Cells(selected, 2).Text
saved_def = Cells(selected, 3).Text
saved_ex = Cells(selected, 4).Text
Cells(selected, 1) = vocab.Text
Cells(selected, 2) = num.Text
Cells(selected, 3) = definition.Text
Cells(selected, 4) = example.Text
End Sub
Private Sub undo_Click()
Cells(selected, 1) = saved_vocab
Cells(selected, 2) = saved_num
Cells(selected, 3) = saved_def
Cells(selected, 4) = saved_ex
End Sub
は、私は何をしたい保存に適切に情報を保存している_ ??? "Undo"ボタンをクリックして2番目の機能を実行すると、正しくアクセスできるようになりました。しかし、2番目の関数を実行すると、以前に保存された情報_ ???変数はおそらく変数スコープを不適切に処理している自分自身のb/cはなくなっています。私がしたいことを達成する最も簡単な方法は何でしょうか?アドバイスを事前に感謝します。