View Single Post
 
Old 10-28-2019, 01:52 PM
Q&A Q&A is offline Windows 10 Office 2010
Novice
 
Join Date: Aug 2019
Posts: 1
Q&A is on a distinguished road
Default

Quote:
Originally Posted by macropod View Post
Given that the second cell doesn't even have any content controls, I can only guess at what you want.

Suppose the dropdown content control in the 1st cell is titled 'ClientA' and the dropdown content control in the 2nd cell is titled 'ClientB'. Suppose also the text content control in the 1st cell is titled 'ClientDetailsA' and the text content control in the 2nd cell is titled 'ClientDetailsB'. In that case, you could use a macro like:
Code:
Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
Application.ScreenUpdating = False
Dim i As Long, StrDetails As String
With ContentControl
  If .Title = "ClientA" Then
    For i = 1 To .DropdownListEntries.Count
      If .DropdownListEntries(i).Text = .Range.Text Then
        StrDetails = Replace(.DropdownListEntries(i).Value, "|", Chr(11))
        Exit For
      End If
    Next
    With ActiveDocument.SelectContentControlsByTitle("ClientDetailsA")(1)
      .LockContents = False
      .Range.Text = StrDetails
      .LockContents = True
    End With
  ElseIf .Title = "ClientB" Then
    For i = 1 To .DropdownListEntries.Count
      If .DropdownListEntries(i).Text = .Range.Text Then
        StrDetails = Replace(.DropdownListEntries(i).Value, "|", Chr(11))
        Exit For
      End If
    Next
    With ActiveDocument.SelectContentControlsByTitle("ClientDetailsB")(1)
      .LockContents = False
      .Range.Text = StrDetails
      .LockContents = True
    End With
  End If
End With
Application.ScreenUpdating = True
End Sub
First, thank you. This thread has been very helpful. I used the quoted code in a form I'm working on which has multiple drop-down lists. Is there a way for the drop-down list to not print if I don't make a selection? For example, in the "Content Control Properties," under "Drop-Down List Properties," I have "Choose type" as my my first "Display Name" which makes it show up automatically in the drop-down list. What follows are a list of options which if selected automatically populates text in another part of the document. If I do not select one of those options and leave it as "Choose type" is there a way to make the drop-down list not print because I don't want it to show on the printed document? I want it to print as if there is no drop-down list if an option is not selected. Would I use a conditional statement? Do you have a suggestion of what I have to do to modify the code to make this work? Any other ideas?
Reply With Quote