![]() |
#1
|
|||
|
|||
![]() Hi, I've designed a word form and the user at the end needs to confirm that it's all been completed accurately and to the best of their knowledge. To do this, I would like them to tick a checkbox which then adds a time stamp and their username after the confirmation statement. My problem is, that my current code doesn't work as the 'selection' would then be the checkbox - how to I get the macro to add the time stamp and user name into the next paragraph? tried it with selection.movedown but no success. Here's my current code: Private Sub CheckBox1_Click() Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend Selection.InsertDateTime DateTimeFormat:="dd/MM/yyyy", InsertAsField:= _ False, DateLanguage:=wdEnglishUK, CalendarType:=wdCalendarWestern, _ InsertAsFullWidth:=False Selection.TypeText Text:=", " Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _ "USERNAME ", PreserveFormatting:=True End Sub |
#2
|
||||
|
||||
![]()
Try the following
Code:
Private Sub CheckBox1_Click() Dim oRng As Range Dim oFld As Field If CheckBox1.Value = True Then Set oRng = Selection.Range oRng.End = oRng.End + 1 oRng.Collapse 0 oRng.Text = Format(Date, "dd/MM/yyyy ") & Format(Time, "hh:mm") oRng.Collapse 0 oRng.Text = ", " oRng.Collapse 0 Set oFld = oRng.Fields.Add(Range:=oRng, Type:=wdFieldUserName, PreserveFormatting:=False) oRng.End = oFld.Result.End oRng.Collapse 0 oRng.Text = vbCr oRng.Collapse 0 End If End Sub Code:
Private Sub CheckBox1_Click() Dim oRng As Range Dim bCC As Boolean Dim oCC As ContentControl Dim sTime As String For Each oCC In ActiveDocument.ContentControls If oCC.Title = "Completed" Then bCC = True Exit For Next oCC If CheckBox1.Value = True Then sTime = Format(Date, "dd/MM/yyyy ") & Format(Time, "hh:mm") & ", " & Application.UserName If bCC = True Then oCC.LockContents = False oCC.Range.Text = sTime oCC.LockContents = True Else Set oRng = Selection.Range oRng.End = oRng.End + 1 oRng.Collapse 0 Set oCC = oRng.ContentControls.Add With oCC .Type = wdContentControlRichText .Title = "Completed" .Tag = .Title .Range.Text = sTime .LockContentControl = True .LockContents = True End With Set oRng = oCC.Range oRng.End = oRng.End + 1 oRng.Collapse 0 oRng.InsertParagraph End If Else If bCC = True Then oCC.LockContents = False oCC.Range.Text = ChrW(8203) oCC.LockContents = True End If End If Set oCC = Nothing Set oRng = Nothing End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
![]() |
Aden | Word | 19 | 07-10-2023 09:02 PM |
Email Time stamp | gazmoz17 | Outlook | 0 | 07-15-2021 01:08 AM |
Time Stamp to seconds | RRB | Excel Programming | 1 | 06-15-2021 03:07 AM |
Time Stamp Incorrect | ashippen | Outlook | 0 | 06-27-2016 12:04 PM |
Time Stamp for Categories? | mlef | Outlook | 0 | 05-18-2016 09:46 AM |