返回列表 上一主題 發帖

[發問] 奇怪的巨集??

請問此語法如何寫?

假如 BOOK1.xls 不是作用視窗 則....................
IF Windows("BOOK1.xls")<>Activate THEN
沒有此語法??

TOP

請問此巨集錯誤如何修改??

本帖最後由 t8899 於 2013-11-1 15:17 編輯

型態不符合  附檔 Book3.rar (7.9 KB)

在開另一檔案後執行會錯誤 ,不開則不會???
Public Runtime
Sub a123()
If Range("i1").Value <> 1 Then
On Error Resume Next
Application.OnTime EarliestTime:=TimeValue(Runtime), _
    Procedure:="a123", Schedule:=False
  Exit Sub
On Error GoTo 0
End If
Macro1
If Range("k14") = 4 Then mytime = "00:00:15"
Runtime = Now + TimeValue(mytime)
Application.OnTime Runtime, "Sheet1.a123"
End Sub

TOP

[發問] 奇怪的巨集??

本帖最後由 t8899 於 2013-11-1 20:10 編輯

1.15秒自動執行一次,沒問題
但當打開A檔案,視窗停留在A檔案,則所得的數字是不對的???
2.單用Sheets("Sheet1").Select 或  With Sheets("Sheet1")
執行會寫進A檔案的工作表裡???
Sub Macro1()
Dim ah As Workbook
Set ah = ActiveWorkbook
'   Sheets("Sheet1").Select
'   With Sheets("Sheet1")
Workbooks("book2.xls").Sheets("Sheet1").Range("a1").Value = Now
t = [TEXT(A1,"hh:mm")+LOOKUP(--TEXT(A1,"s"),{0,15,30,45})/86400]
Workbooks("book2.xls").Sheets("Sheet1").Range("a65536").End(xlUp).Offset(1).Value = Format(t, "hh:mm:ss")
' End With
ah.Activate
End Sub
Book2.rar (9.06 KB)

本帖最後由 t8899 於 2013-11-1 22:13 編輯

回復 8# GBKEE

     
    't = [TEXT(A1,"hh:mm")+LOOKUP(--TEXT(A1,"s"),{0,15,30,45})/86400]
        ' 這裡的A1是作用中活頁簿ActiveWorkbook(當打開A檔案)的ActiveSheet的 A1     

單純能否只改這句來解決呢??
這句裡的A1 無法指定到  Workbooks("book2.xls").Sheets("Sheet1")  裡??
t = [TEXT(NOW,"hh:mm")+LOOKUP(--TEXT(NOW,"s"),{0,15,30,45})/86400]

TOP

回復 10# GBKEE
謝謝
昨晚想了另一個方法如下:
儲存格B1=TEXT(FLOOR(A1,"0:00:15"),"hh:mm:SS")
Sub Macro1()
Dim ah As Workbook
Set ah = ActiveWorkbook
Workbooks("book2.xls").Sheets("Sheet1").Range("a1").Value = Now  
Workbooks("book2.xls").Sheets("Sheet1").Range("a65536").End(xlUp).Offset(1).Value =Workbooks("book2.xls").Sheets("Sheet1").Range("B1").Value
ah.Activate
END SUB

TOP

        靜思自在 : 時時好心就是時時好日。
返回列表 上一主題