我有一本excel工作簿,它从另一个来源(打开,关闭,净头寸等)提取股票数据
重点是,我希望每次更改数据后都保存一个CSV文件,例如,我输入了100只股票的头寸,excel相应地更新了信息,现在我想将其保存到单独的位置Excel工作表。
当我手动输入信息时,下面的代码可以正常工作,但是当通过RTD(自动更新单元格)提取数据时,代码不会运行
Private Sub Worksheet_Change(ByVal Target As Range)
Application.DisplayAlerts = False
If Not Intersect(Target, Me.Range("B33:D380")) Is Nothing Then
ThisWorkbook.SaveCopyAs Filename:="F:\Google Drive\autosave.csv"
End If
End Sub
答案 0 :(得分:1)
Worksheet_Change()
不会由RTD
这样的公式触发来更新单元格。
为此,您将需要创建一个Worksheet_Calculate()
Sub来侦听更改。
问题是此工作表函数没有Range
参数来测试正在编辑的单元格...因此,请参见此link。