It's not a good idea to lose wdapp.Quit, you'll end up with an invisible instance of Word every time you run the macro.
The following has several changes, see comments.
Sub getformdata3()
'This code pulls word documents with Content Controls and inserts them into a spreadsheet for analysisSub getformdata()
'
'Set up variables
Dim wdapp As New Word.Application
Dim wdDoc As Word.Document
Dim CCtrl As Word.ContentControl
Dim strFolder As String
Dim strFile As String
Dim WkSht As Worksheet
Dim i As Long
Dim j As Long

'Defines "strfolder" as the appropriate folder from which you want to pull your word documents from
'It does so using the "GetFolder()" separate function below
strFolder = GetFolder
'If there is nothing in the specified folder, this line tells the macro to stop
If strFolder = "" Then Exit Sub
'Set data to dump on sheet number one regardless of what sheet in the work book you are on
Set WkSht = Worksheets(1)
'Sets "strFile" as the name of the first word doc in the chosen folder path
strFile = Dir(strFolder & "\*.doc", vbNormal)
'Prevents screen from refreshing during Macro to make it more efficient (???)
Application.ScreenUpdating = False    'moved this down (if Exit Sub is executed, it'll never be set back to true).
'The below while loop grabs a word doc in the specified folder, pastes all the Content Controlled fields of a word doc in a specified row/column based on the column header in row 1
While strFile <> ""
  Set wdDoc = wdapp.Documents.Open(Filename:=strFolder & "\" & strFile, AddToRecentFiles:=False, Visible:=False, ReadOnly:=True)
  With wdDoc
    For Each CCtrl In .ContentControls
      With CCtrl
        Select Case .Type
          Case wdContentControlDate, wdContentControlDropdownList, wdContentControlRichText, wdContentControlText
            j = Application.Match(CCtrl.Title, Range("1:1"), 0)    'missing out .WorksheeetFunction means no error is thrown if no match is found…
            If Not IsError(j) Then    'whereas this line checks for no error.
              i = WkSht.Cells(WkSht.Rows.Count, j).End(xlUp).Row + 1
              WkSht.Cells(i, j).Value = .Range.Text
            Else    'this and the line below can be deleted; just there to alert you, the developer, when something's not found
              MsgBox CCtrl.Title & " not found in first row of sheet."    'this can go too.
            End If
        End Select
      End With
    Next CCtrl
    wdDoc.Close SaveChanges:=False
    strFile = Dir()
  End With
Wend
Application.ScreenUpdating = True
wdapp.Quit    'needs to be kept
End Sub