PDA

View Full Version : การทำนาฬิกาใน Excel ครับ



ie36022
30 May 2007, 22:14
ผมใช้ Excel 2003 ครับ ต้องการให้ Cell ใน Sheet ที่ผมแนบมาซึ่งมีเวลาใส่อยู่ต้องการให้ตัวเลขนี้เดินพร้อมกับนาฬิกาจริงๆของคอมพิวเตอร์โดยมี Format แบบนี้ครับ hh:mm:ss ครับต้องเขียนโค๊ด VBA ยังไงครับ ขอบคุณครับ

zv735
30 May 2007, 23:08
Sub ClockUp()
Range("A2").Value = Format(Now(), "hh:mm:ss")
Application.OnTime Now + TimeSerial(0, 0, 1), "ClockUp"
End Sub


เป็นการสั่งให้ทำงานทุกๆ หนึ่งวินาทีครับผม

ดู File แนบนะครับ

ie36022
31 May 2007, 13:43
ขอบคุณครับ ได้คำตอบตามที่ต้องการครับ แต่ผมไม่เข้าใจโค๊ดครับพยายามหาในหนังสือแล้วไม่เคยเห็นฟังชันการตัดสินใจ If not ซึ่งหมายความว่าอย่างครับ แล้วหลักการใช้อย่างไรแล้วทำไมผมเปิด Sheet มาแล้ว Macro ทำงานเลย โดยปกติดแล้วต้องมีปุ่มหรือคีย์สั่งให้ทำงานน่ะครับ ขอบคุณอีกครั้งครับ

zv735
31 May 2007, 14:58
จริงๆ ไม่จำเป็นต้องใช้ If ก็ได้ครับ
ลอง Load File ดู ใหม่ครับ

Application.OnTime เป็นการสั่งให้ทำงานเมือถึงเวลาที่กำหนดครับ
TimeSerial(ชั่วโมง, นาที, วินาที) เป็นการกำหนดค่าเวลาที่เราต้องการครับ

ส่วนการให้ Macro ทำงานเลยเมื่อเปิด File ให้เขียนคำสั่งอยู่ใน
Private Sub Workbook_Open() ครับ
ทั้งหมดนี้ลองดูเพิ่มเติมในหนังสือน่าจะมีนะครับ

ie36022
31 May 2007, 22:11
จริง ๆ แล้ว ก็อยากทราบเหตุผลที่ใช้ if น่ะครับ โดยเฉพาะ If not หมายความว่ายังไง เพราะผมก็เคยเห็นอาจารย์อรวีร์ ใช้ฟังชันนี้เหมือนกันก็มี if เหมือนกัน
Public Sub ShowCursor()
Dim Point As POINTAPI
GetCursorPos Point
[A3] = Point.X
[B3] = Point.Y
If ShowCur Then Application.OnTime Now() + 0.000006, "ShowCursor"
End Sub
แต่ if ของอาจารย์ อรวีร์ ไม่ต้องมี End if ตอนจบหรือครับ

zv735
1 Jun 2007, 00:49
เรื่องของการใช้ if
สูตรคือ
If เงื่อนไข then คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นจริง 'อันนี้จบได้เลยครับ

If เงื่อนไข then
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นจริง1
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นจริง2
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นจริง3
.
.
คำสั่งที่เป็นจริง n
else
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นเท็จ1
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นเท็จ2
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นเท็จ3
.
.
คำสั่งที่ให้ทำเมื่อเงื่อนไขเป็นเท็จ n
end if ' อันนี้ต้องมี end if ครับ แต่ ส่วน Else จนถึง ก่อน end if จะมีหรือไม่ก็ได้
แล้วแต่ว่าเรามีคำสั่งที่ให้ทำเมื่อ เงื่อนไขเป็นเท็จหรือเปล่าครับ

ส่วนเรื่องเงื่อนไข แล้วแต่เราตั้งครับ ทำยังไงก็ได้ให้มันมีค่าชี้ชัดแน่นอน
ว่า จริง หรือ เท็จ ครับ
เพราะฉนั้น if (not เงื่อนไข) then ...
not เป็น การกลับค่าเงื่อนไขที่เราตั้งไว้ครับ
เช่น ขอเดิมเป็นจริง ประโยคนี้ก็จะเป็นเท็จครับ
(เรียกว่า นิเสธ ก็ได้ครับ เขียนผิดหรือเปล่าไม่ทราบครับ)
ไม่รู้เข้าใจหรือเปล่า ลองดูท่านอื่นอธิบายเพิ่มเติมด้วยนะครับ

ขอบคุณครับ

สมเกียรติ
1 Jun 2007, 09:35
VBA กับการตัดสินใจ (http://www.excelexperttraining.com/blog/archives/000843p.php)
http://www.excelexperttraining.com/blog/archives/z210-CourseManual000843.php

ie36022
2 Jun 2007, 07:30
ขอบคุณครับอาจารย์