在ExcelVBA中是否有像Application.Intersect(Target, Range)这样的[Google App script]方法?
Is there a [Google App script] method like Application.Intersect(Target, Range) in Excel VBA?
#VBA
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A2:M10"), Target) Is Nothing Then
Range("N" & Target.Row).Value = Format(Now)
End If
End Sub
嗯,我想要的是
表示更正或输入的时间
每当为每一列修改或输入相应的范围时。
这是问题:如果有人做过类似的事情,请分享您的经验。如果他能复活,我会改编他来解决我的任务。
是的,您可以使用 onEdit 触发器在应用程序脚本中也具有相同的功能,
根据可用的 VBA 代码,通过 google sheet 转到 appscript 编辑器并尝试此操作:
function onEdit(e) {
var range = e.range; // Get edited range
var row = range.getRow() // Get edited row from range
var column = range.getColumn() // Get edited column from range
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ssname = ss.getActiveSheet()
if(row >= 2 && column <= 13) // Only add timestamp if edit occured in A2:M
{
ssname.getRange('N'+row).setValue(new Date()) // Adding Timestamp in N column
}
}
参考:
#VBA
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A2:M10"), Target) Is Nothing Then
Range("N" & Target.Row).Value = Format(Now)
End If
End Sub
嗯,我想要的是 表示更正或输入的时间 每当为每一列修改或输入相应的范围时。
这是问题:如果有人做过类似的事情,请分享您的经验。如果他能复活,我会改编他来解决我的任务。
是的,您可以使用 onEdit 触发器在应用程序脚本中也具有相同的功能,
根据可用的 VBA 代码,通过 google sheet 转到 appscript 编辑器并尝试此操作:
function onEdit(e) {
var range = e.range; // Get edited range
var row = range.getRow() // Get edited row from range
var column = range.getColumn() // Get edited column from range
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ssname = ss.getActiveSheet()
if(row >= 2 && column <= 13) // Only add timestamp if edit occured in A2:M
{
ssname.getRange('N'+row).setValue(new Date()) // Adding Timestamp in N column
}
}
参考: