
→ soyoso: 設定於shapes.oleformat.object.caption 09/02 16:18
→ soyoso: 時間格式調整可用format和now 09/02 16:18
→ yyingx: 嗚嗚,打不開youtube 09/02 16:45
→ yyingx: 第一次接觸這個,能否直接給個巨集截圖,非常感謝! 09/02 18:24
→ soyoso: 回文搜尋一下就有 09/02 18:28
→ yyingx: 古人云,授人以魚,不如授人以漁,我也知道要自己動手 09/02 18:31
→ yyingx: 一個基礎薄弱了寫,再一個大陸的百度很渣。 09/02 18:32
→ soyoso: 或是以shapes.drawingobject.caption 09/02 18:58
→ soyoso: 寫法worksheet.shapes(name或index).oleformat.....= 09/02 19:04
→ soyoso: format() 09/02 19:04
→ soyoso: worksheet有可以是activesheet、sheets(name或index)或 09/02 19:07
→ soyoso: 工作表1..等方式 09/02 19:07
→ yyingx: 如果有兩個shapes,就要判斷么,<>shapes("A"),就 09/02 22:23
Shapes(2).DrawingObject.Caption = Application.Text(Now(), "yyyy-mm-dd hh:mm:ss:")
※ 編輯: yyingx (27.38.52.181), 09/02/2016 22:24:40
→ yyingx: 是這樣思路嗎,但是不知道定位到shapes(2)上 09/02 22:25
→ soyoso: 在vba內可直接用format,不用引用worksheetfunction內的 09/02 22:26
→ soyoso: text 09/02 22:26
→ soyoso: 原po要定位到兩個shape的其中一個嗎? 09/02 22:27
→ yyingx: 原P0運行"按鈕1",系統時間就生成這另外一個shape上 09/02 22:36
→ yyingx: Shapes(2).DrawingObject.Caption = 09/02 22:37
→ yyingx: Format(Now(), "yyyy-mm-dd hh:mm:ss:") 09/02 22:38
→ yyingx: 現在我不知道另外一個shapes的name或者index 09/02 22:39
→ soyoso: name顯示於名稱方塊內 09/02 22:43
→ yyingx: 但是另外一個shapes是要顯示系統時間的,這個怎么抓 09/02 22:45
→ soyoso: 原po有二個按鈕,一個執行巨集,另一個顯示系統時間,這是 09/02 22:53
→ soyoso: 否有誤解呢? 09/02 22:53
→ yyingx: 沒有,最后的效果圖就是您demo那樣 09/02 22:55
→ soyoso: shapes(指定要顯示系統時間表單按鈕的name) 09/02 22:56
→ soyoso: name顯示於名稱方塊內 09/02 22:56
→ yyingx: 這個name是按鈕2---->系統時間,這個是變量呀 09/02 23:00
→ yyingx: "按鈕2"----->"2016-09-02 23:00" 09/02 23:00
→ soyoso: 變量的是caption而並非要原po改name的值,是以name去指去 09/02 23:05
→ soyoso: 該shape 09/02 23:06
→ yyingx: 還是不太明白,我現在就定位另一個表單按鈕,然后K入時間 09/02 23:10
Sub ErgShapes_2()
Dim myShape As Shape
Dim i As Integer
i = 1
For Each myShape In Sheet4.Shapes
If myShape.Type = msoTextBox Then
myShape.TextFrame.Characters.Text = Format(Now(), "yyyy-mm-dd h
h:mm:ss")
i = i + 1
End If
Next
End Sub
※ 編輯: yyingx (27.38.52.181), 09/02/2016 23:22:08
→ yyingx: 改抓文本框了,但感覺好繁瑣 09/02 23:23
→ yyingx: Sheets("未結訂單").Shapes("按鈕2_Click") 09/02 23:46
→ yyingx: .DrawingObject.Caption = 09/02 23:46
→ yyingx: Format(Now(), "yyyy-mm-dd hh:mm:ss") 09/02 23:47
ActiveSheet.Shapes("Button 2").OLEFormat.Object.Caption = Format(Now(), "yyyy-mm-dd hh:mm:ss")
※ 編輯: yyingx (27.38.52.181), 09/02/2016 23:55:55
→ yyingx: 終于搞定,謝謝SO大耐心指點 09/02 23:56
推 waiter337: 我也學到一招了0,0 我也要用這個時間點 09/03 03:39
→ yyingx: 還想追問一下,Button 2是屬于shapes的name還是index? 09/03 18:57
→ soyoso: 應為shape's name 09/03 20:46
→ soyoso: 抱歉,回文內的index應更正為index number才為正確 09/03 20:47
→ soyoso: 因index為shape's name或是index number 09/03 20:49
→ yyingx: 假如shapes有表單控件,圖片,文本框,這個index NO.如何 09/03 20:58
→ yyingx: 找 09/03 20:58
→ soyoso: 可以巨集從選取中的按鈕,回傳index值 09/03 21:13
→ soyoso: 或以回文寫到的shape集合迴圈,加上判斷回傳要的index值 09/03 21:18
推 waiter337: 錄製巨集也能幫你改按鈕名稱 09/04 15:04