Note: The other languages of the website are Google-translated. Back to English
English English

จะบันทึกวันที่และเวลาโดยอัตโนมัติเมื่อเซลล์เปลี่ยนแปลงได้อย่างไร?

เป็นเรื่องง่ายที่เราจะแทรกวันที่และเวลาแบบคงที่ด้วยตนเองหรือแทรกวันที่แบบไดนามิกที่เปลี่ยนแปลงด้วยเวลาของระบบด้วยสูตร หากคุณต้องการบันทึกวันที่และเวลาโดยอัตโนมัติเมื่อคุณเปลี่ยนหรือป้อนค่าปัญหานี้อาจแตกต่างกันบ้างในการจัดการ แต่ในบทความนี้คุณสามารถแก้ปัญหานี้ได้โดยทำตามขั้นตอนต่อไปนี้

บันทึกวันที่และเวลาโดยอัตโนมัติเมื่อเซลล์เปลี่ยนแปลงด้วยรหัส VBA

แท็บ Office เปิดใช้งานการแก้ไขและเรียกดูแบบแท็บใน Office และทำให้งานของคุณง่ายขึ้นมาก ...
Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%
  • ใช้ซ้ำอะไรก็ได้: เพิ่มสูตรที่ใช้มากที่สุดหรือซับซ้อนแผนภูมิและสิ่งอื่นใดในรายการโปรดของคุณและนำกลับมาใช้ใหม่ได้อย่างรวดเร็วในอนาคต
  • คุณสมบัติข้อความมากกว่า 20 รายการ: แยกหมายเลขจากสตริงข้อความ แยกหรือลบบางส่วนของข้อความ แปลงตัวเลขและสกุลเงินเป็นคำภาษาอังกฤษ
  • ผสานเครื่องมือ: สมุดงานและแผ่นงานหลายเล่มเป็นหนึ่งเดียว ผสานหลายเซลล์ / แถว / คอลัมน์โดยไม่สูญเสียข้อมูล รวมแถวและผลรวมที่ซ้ำกัน
  • แยกเครื่องมือ: แยกข้อมูลออกเป็นหลายแผ่นตามมูลค่า; สมุดงานหนึ่งเล่มเป็นไฟล์ Excel, PDF หรือ CSV หลายไฟล์ หนึ่งคอลัมน์ถึงหลายคอลัมน์
  • วางการข้าม แถวที่ซ่อน / กรอง; นับและผลรวม โดย Background Color; ส่งอีเมลส่วนบุคคลไปยังผู้รับหลายคนในกลุ่ม
  • ซุปเปอร์กรอง: สร้างโครงร่างตัวกรองขั้นสูงและใช้กับแผ่นงานใด ๆ ประเภท ตามสัปดาห์วันความถี่และอื่น ๆ กรอง by ตัวหนาสูตรคอมเม้น ...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ ทำงานร่วมกับ Office 2007-2019 และ 365; รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ

ลูกศรสีฟ้าฟองขวา บันทึกวันที่และเวลาโดยอัตโนมัติเมื่อเซลล์เปลี่ยนแปลงด้วยรหัส VBA


ตัวอย่างเช่นฉันมีช่วงของค่าและตอนนี้เมื่อฉันเปลี่ยนหรือพิมพ์ค่าใหม่ในคอลัมน์ B ฉันต้องการให้บันทึกวันที่และเวลาปัจจุบันในคอลัมน์ C โดยอัตโนมัติตามภาพหน้าจอต่อไปนี้:

doc-update-time-value-changes-1

คุณสามารถทำงานนี้ให้เสร็จโดยใช้รหัส VBA ต่อไปนี้ กรุณาทำตามนี้:

1. กด ALT + F11 คีย์เพื่อเปิด หน้าต่าง Microsoft Visual Basic for Applications

2. จากนั้นเลือกแผ่นงานที่คุณใช้จากด้านซ้าย นักสำรวจโครงการดับเบิลคลิกเพื่อเปิดไฟล์ โมดูลจากนั้นคัดลอกและวางโค้ด VBA ต่อไปนี้ลงในโมดูลเปล่า:

รหัส VBA: บันทึกวันที่และเวลาโดยอัตโนมัติเมื่อเซลล์เปลี่ยนแปลง

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140722
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("B:B"), Target)
xOffsetColumn = 1
If Not WorkRng Is Nothing Then
    Application.EnableEvents = False
    For Each Rng In WorkRng
        If Not VBA.IsEmpty(Rng.Value) Then
            Rng.Offset(0, xOffsetColumn).Value = Now
            Rng.Offset(0, xOffsetColumn).NumberFormat = "dd-mm-yyyy, hh:mm:ss"
        Else
            Rng.Offset(0, xOffsetColumn).ClearContents
        End If
    Next
    Application.EnableEvents = True
End If
End Sub

doc-update-time-value-changes-1

3. จากนั้นบันทึกและปิดรหัสนี้เพื่อกลับไปที่แผ่นงานตอนนี้เมื่อคุณเปลี่ยนค่าเซลล์หรือพิมพ์ข้อมูลใหม่ในคอลัมน์ B วันที่และเวลาจะถูกบันทึกโดยอัตโนมัติในคอลัมน์ C

หมายเหตุ:

1. ในโค้ดด้านบนคุณสามารถแก้ไข "BB” ไปยังคอลัมน์อื่น ๆ ที่คุณต้องการเปลี่ยนค่าเซลล์ในสคริปต์นี้: ตั้งค่า WorkRng = Intersect (Application.ActiveSheet.Range ("B: B"), Target).

2. ด้วยสิ่งนี้ xOffsetColumn = 1 คุณสามารถแทรกและอัปเดตวันที่และเวลาในคอลัมน์แรกถัดจากคอลัมน์ค่าที่เปลี่ยนแปลงของคุณคุณสามารถเปลี่ยนหมายเลข 1 เป็นตัวเลขอื่น ๆ เช่น 2,3,4,5 …ซึ่งหมายความว่าวันที่จะถูกแทรก คอลัมน์ที่สองสามสี่หรือห้านอกเหนือจากคอลัมน์ค่าที่คุณเปลี่ยนแปลง

3. เมื่อคุณลบค่าในคอลัมน์ที่เปลี่ยนแปลงวันที่และเวลาจะถูกลบออกด้วย


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (108)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณเขียนโค้ดเพื่อทำสิ่งนี้หลาย ๆ ครั้งในหน้าเดียวได้อย่างไร ข้อความในคอลัมน์ B วันที่ใน C และข้อความใน D วันที่ใน E?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
[quote]คุณเขียนโค้ดหลายครั้งในหน้าเดียวได้อย่างไร เช่น ข้อความในคอลัมน์ B วันที่ใน C และข้อความใน D วันที่ใน E?โดย Hilary[/quote] ฉันรู้ว่านี่เก่าแล้ว แต่วิธีที่ง่ายและยาว คือการคัดลอกการประกาศตัวแปรและสร้างตัวแปรใหม่ (เช่น WorkRng1 และ Rng1) คุณต้องคัดลอกคำสั่ง "if" และเปลี่ยนตัวแปรเป็นชื่อตัวแปรใหม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
[quote]คุณเขียนโค้ดหลายครั้งในหน้าเดียวได้อย่างไร เช่น ข้อความในคอลัมน์ B วันที่ใน C และข้อความใน D วันที่ใน E?โดย Hilary[/quote] นี่คือรหัส: Private Sub Worksheet_Change(ByVal Target As Range) 'Update 20140722 Dim WorkRng As Range Dim Rng As Range Dim xOffsetColumn As Integer 'เปลี่ยนช่วงเพื่อเลือกคอลัมน์ที่คุณกำลังอัปเดตเช่น ("A: A") หรือ ("B:B") ตั้งค่า WorkRng = Intersect(Application.ActiveSheet.Range("E:E"), Target) xOffsetColumn = 1 'สำหรับการประทับครั้งที่สอง 'สร้างชื่อตัวแปรใหม่ เช่น WorkRng1 Rng1 เป็นต้น Dim WorkRng1 As Range Dim Rng1 As Range Dim xOffsetColumn1 As Integer Set WorkRng1 = Intersect(Application.ActiveSheet.Range("G:G"), Target) xOffsetColumn1 = 1 'สำหรับการประทับครั้งแรกถ้าไม่ทำงานRng Is Nothing จากนั้น Application.EnableEvents = False สำหรับแต่ละ Rng ใน WorkRng ถ้าไม่ใช่ VBA.IsEmpty(Rng.Value) จากนั้น Rng.Offset(0, xOffsetColumn).Value = ตอนนี้ Rng.Offset(0, xOffsetColumn).NumberFormat = "mm/dd/ ปปปป" อื่น Rng.Offset(0, xOffsetColumn).ClearContents End If Next Application.EnableEvents = True End If 'สำหรับครั้งที่สองหากไม่ได้ทำงานRng1 Is Nothing แล้ว Application.EnableEve nts = False สำหรับแต่ละ Rng1 ใน WorkRng1 ถ้าไม่ใช่ VBA.IsEmpty(Rng1.Value) จากนั้น Rng1.Offset(0, xOffsetColumn1).Value = ตอนนี้ Rng1.Offset(0, xOffsetColumn1).NumberFormat = "mm/dd/yyyy" Else Rng1.Offset(0, xOffsetColumn1).ClearContents End If Next Application.EnableEvents = True End If End Sub
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จะทำอย่างไรถ้าฉันต้องการทำสิ่งนี้สำหรับช่วงของคอลัมน์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เปลี่ยนช่วง (B:B) ดังนี้ (10:20) สำหรับคอลัมน์ 10 ถึง 20 (D5:D40) สำหรับคอลัมน์ 5 ถึง 40 ในแถว D หวังว่าจะช่วยได้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขออภัย ฉันสลับคอลัมน์เป็นแถว แต่ก็ยังใช้งานได้ (D:P) จากคอลัมน์ D ถึง P (D5:D5) จากคอลัมน์ D ถึง P ในแถว 5
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เมื่อฉันบันทึกมันใช้งานได้ แต่เมื่อฉันเปิดใหม่อีกครั้งไม่ทำงาน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
[quote] เมื่อฉันบันทึกมันใช้งานได้ แต่เมื่อฉันเปิดใหม่ไม่ทำงานBy อารีฟ[/quote] ปัญหาเดียวกับ Aarif... มันใช้งานได้เมื่อครึ่งชั่วโมงที่แล้ว และตอนนี้มันไม่... เช่นกัน ฉันต้องการแค่เวลาไม่ใช่วันที่และเวลา ดังนั้นฉันจึงแก้ไข ".NumberFormat" เป็น แค่ hh:mm:ss บันทึกแล้ว ทดสอบแล้ว... ไม่ต่าง... ยังใส่วันที่และเวลา...? เปิด VB อีกครั้ง และพิมพ์ข้อความที่มีตัวคั่น บันทึกอีกครั้ง ยังไม่มีอะไรดี จากนั้นฉันทำเป็นครั้งที่สาม และรูปแบบก็เป็นไปตามที่บอก และทันใดนั้นฉันก็มีเวลา แปลกมาก ฉันคิดมานานแล้วว่า Excell มีผีสิง ตั้งแต่ฉันใช้ฟังก์ชัน SEARCH ค้นหาค่าในเซลล์ที่ฉันเห็นด้วยตาตัวเอง แต่ Excel ยืนยันว่าไม่มีอยู่จริง!? ปรมาจารย์หรือหมอผีของ Excel ที่สามารถช่วยได้หรือไม่ เหตุใดจึงละเว้น VB ของฉันและไม่มีการประทับเวลาเหมือนที่เคยทำ... ขอบคุณครับ :cry:
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
[quote]คุณเขียนโค้ดหลายครั้งในหน้าเดียวได้อย่างไร เช่น ข้อความในคอลัมน์ B วันที่ใน C และข้อความใน D วันที่ใน E?โดย Hilary[/quote] คำตอบของใบเสนอราคาคืออะไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จะเป็นอย่างไรถ้าฉันต้องการให้สิ่งนี้ทำงานแต่ไม่ได้อยู่บนแผ่นงานที่ใช้งานอยู่ ดังนั้นให้ทำงานในพื้นหลังและอัปเดตทุกครั้งที่มีรายการในคอลัมน์ B
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จะเกิดอะไรขึ้นหากคอลัมน์ที่ส่งผลต่อคอลัมน์การประทับเวลาเป็นผลรวมของคอลัมน์อื่นๆ หลายคอลัมน์ ตัวอย่างเช่น... คอลัมน์ H คือ =Sum(E+F+G) และฉันต้องการการประทับเวลาใน Colum I ทุกครั้งที่มีการเปลี่ยนแปลงคอลัมน์ H หรือในสาระสำคัญเมื่อคอลัมน์ E, F หรือ G มีการเปลี่ยนแปลง . คุณช่วยได้ไหม??
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันต้องการความช่วยเหลือ! ฉันกำลังพยายามประทับเวลาทุกครั้งที่มีการเปลี่ยนแปลงหนึ่งในสามเซลล์ ผมอยากจะทำสิ่งนี้เมื่อผลรวมของเซลล์เหล่านี้เปลี่ยนไป ตัวอย่างเช่น. เซลล์ E, F, G จะเปลี่ยนไป และเซลล์ H จะเป็นผลรวมของทั้งสามเซลล์ เมื่อมีการเปลี่ยนแปลง Cell H ฉันต้องการให้ Cell I ถูกประทับเวลา เป็นไปได้ไหม?? ขอบคุณมาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันกำลังพยายามเรียกใช้โค้ดด้านบน อย่างไรก็ตาม เซลล์ที่ฉันต้องการบันทึกการเปลี่ยนแปลงนั้นเชื่อมโยงกับช่องกาเครื่องหมาย ดังนั้นจึงเป็น "TRUE" หรือ "FALSE" ด้วยเหตุผลบางอย่าง รหัสจะไม่ทำงานเมื่อเซลล์เปลี่ยนแปลง อย่างไรก็ตาม ถ้าฉันป้อนคำว่า "ใช่" ด้วยตนเอง รหัสก็ใช้ได้ดี วิธีแก้ปัญหาสำหรับปัญหานี้ที่คุณทราบ ขอขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เป็นไปได้ไหมที่จะทำเช่นนี้สำหรับข้อมูลทางประวัติศาสตร์? หากฉันเปลี่ยนแปลงเซลล์เมื่อวานนี้หรือเมื่อเดือนที่แล้ว ฉันจะใช้รูปแบบของรหัสนี้เพื่อดึงข้อมูลวันที่เหล่านั้นได้หรือไม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มีวิธีประทับเวลาตามการเปลี่ยนแปลงที่เฉพาะเจาะจงหรือไม่? ตัวอย่างเช่น ฉันมีสเปรดชีตที่มีคอลัมน์ตัวเลือกแบบเลื่อนลง ซึ่งรวมถึงว่างเปล่า "ตกลง" และ "ดำเนินการ" เมื่องานเสร็จสิ้น ดรอปดาวน์จะถูกใช้ด้วยตนเองเพื่อเลือก 'ตกลง' ฉันต้องการให้ประทับวันที่เมื่อเลือก 'ตกลง' แต่ไม่ใช่เมื่อเลือก 'การกระทำ' ตัวเลือก 'ดำเนินการ' ในเมนูแบบเลื่อนลงจะใช้เมื่องานเกินกำหนดชำระ แต่ฉันแค่พยายามติดตามว่ารายการเสร็จสมบูรณ์เมื่อใด มีวิธีการทำเช่นนี้ด้วยรหัสด้านบนหรือไม่? ขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณสามารถแก้ไขปัญหานี้ได้หรือไม่?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เป็นคำถามที่ดีมาก ได้จัดแจงแล้ว ช่วยแชร์ทางหน่อยได้มั้ยคะ?
ขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันสามารถเปลี่ยนช่วงเป็น ("A:Q") ได้ แต่ฉันต้องการวันที่และเวลาเพื่อไปที่ "S" หากข้อมูลในเซลล์ AQ มีการเปลี่ยนแปลง/ลบ ฉันถูกท้าทาย VBA ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขออภัย ฉันเพิ่งโพสต์คำถามและต้องการคำตอบนี้...ฉันต้องพลาดความคิดเห็นนี้...หวังว่าจะมีคนสามารถช่วยได้!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันจะเปลี่ยนเฉพาะวันที่ในเซลล์ที่อยู่ติดกันได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันจะรับการประทับเวลาเพื่อบันทึกในเซลล์ใดเซลล์หนึ่งได้อย่างไร แทนที่จะเป็นเซลล์ถัดจากเซลล์ที่มีการเปลี่ยนแปลง ฉันกำลังพยายามประทับเวลาของเซลล์แถวหนึ่งเมื่อมีการเปลี่ยนแปลงเกิดขึ้นในเซลล์เหล่านั้น ฉันต้องการให้ประทับเวลาบันทึกในเซลล์หนึ่งๆ ... ใครก็ได้ช่วยเรื่องนี้ได้ไหม ขอขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ขอขอบคุณสำหรับสิ่งนี้ เพราะมันยอดเยี่ยมสำหรับการตรวจสอบ WB มีวิธีแก้ไขเพื่อให้วันที่/เวลาถูกบันทึกที่ใดที่หนึ่งบน WB ทุกครั้งที่มีการเพิ่มหรือแก้ไขความคิดเห็น ฉันรู้ว่านี่เป็นคำถามทั่วไป แต่ฉันไม่แน่ใจว่าเป็นไปได้หรือไม่ (น่าเสียดายสำหรับ MS 2010 ที่คุณสมบัติ .comment ไม่มีคุณสมบัติ date เพื่อระบุเวลาที่ป้อน Mike
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันจะกำหนดค่าให้อ่านคอลัมน์ A:A และระบุเวลาใน B:B เฉพาะเมื่อป้อนตัวเลข 14 หลักได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ฉันต้องการความช่วยเหลือในการเขียนโค้ด VBA ฉันกำลังสร้างสเปรดชีตพร้อมเคสที่จะถูกกำหนดให้กับผู้คนและมีสถานะเคส ผู้รับโอนสิทธิ์จะอยู่ใน Col H และฉันต้องการการประทับวันที่ใน Col I เมื่อเซลล์ใน Col H ได้รับการอัปเดตหรือเปลี่ยนชื่อ ในทำนองเดียวกัน ฉันจะมีสถานะเคสใน Col J และจะต้องประทับวันที่ใน Col K เมื่อสถานะถูกป้อนหรือเปลี่ยนแปลง เมื่อไม่มีชื่อหรือสถานะผู้รับโอน ฉันต้องการให้ประทับวันที่ใน Col I และ K ว่างเปล่า ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม ขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันพบรหัสนี้ที่อื่นและแก้ไขเพื่อการใช้งานของฉัน หากทำอย่างถูกต้อง คุณไม่จำเป็นต้องกังวลเกี่ยวกับการป้อนฟังก์ชันในเซลล์หรือไฟล์ที่เปลี่ยนวันที่เป็นวันที่ของวันนั้นทุกครั้งที่เปิดขึ้น - เปิด Excel - กด "Alt+F11" - ดับเบิลคลิกที่เวิร์กชีตที่คุณต้องการใช้การเปลี่ยนแปลง (แสดงรายการทางด้านซ้าย) - คัดลอก/วางโค้ดด้านล่าง - ปรับอินพุต Range(_:_) ให้สอดคล้อง ในคอลัมน์ที่คุณจะอัปเดต - ปรับอินพุต Offset (0,_) ให้สอดคล้องกับคอลัมน์ที่คุณต้องการให้แสดงวันที่ (ในเวอร์ชันด้านล่าง ฉันกำลังอัปเดตคอลัมน์ D และฉันต้องการให้วันที่แสดงในคอลัมน์ F ดังนั้นรายการอินพุตของ "2" สำหรับ 2 คอลัมน์จากคอลัมน์ D) - กดบันทึก - ทำซ้ำขั้นตอนข้างต้นหากมีแผ่นงานอื่นในสมุดงานของคุณที่ต้องการรหัสเดียวกัน - คุณอาจต้องเปลี่ยนรูปแบบตัวเลขของคอลัมน์ที่แสดง วันที่เป็น "ทั่วไป" และเพิ่มความกว้างของคอลัมน์หากแสดง "####" หลังจากที่คุณสร้างรายการที่อัปเดตแล้ว คัดลอก/วางโค้ดด้านล่าง: ____________________________________________________________ Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range(" D:D")) Is Nothing แล้ว Exit Sub Target.Offset(0, 2) = Date End Sub ___ _________________________________________________________ ขอให้โชคดี...
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
รหัสนี้จะแสดงวันที่เมื่อคลิกที่ปรากฏ เป็นไปได้ไหมที่จะแสดงวันที่เฉพาะเมื่อเนื้อหาในเซลล์เปลี่ยนแปลง หากคลิกเพียงเท่านั้นและไม่มีอะไรเปลี่ยนแปลง วันที่จะไม่แสดงหรือวันที่ที่ป้อนก่อนหน้านี้จะยังคงอยู่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เมื่อฉันบันทึกในแมโครสูตร vloocup ดังนั้นฉันจะทำวันที่นั้นเปลี่ยนเป็น 1 วันโดยอัตโนมัติได้อย่างไร เช่นเดียวกับวันที่ 21/07/2017 แล้ววันถัดไปจะเปลี่ยนเป็น 22/07/2017 โปรดแชร์โดยอัตโนมัติหากมีรหัส vba
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
แทนที่บรรทัดนี้
Rng.Offset(0, xOffsetColumn).Value = ตอนนี้

ไปยัง
Rng.Offset(0, xOffsetColumn).Value = ตอนนี้+1
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมากสำหรับรหัส! สิ่งที่ฉันกำลังมองหา!!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอขอบคุณสำหรับความช่วยเหลือของคุณ :-)
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
โหลดเพิ่มเติม
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ