Instead of changing the array, why not just add a condition as you loop through it?

For lngCounter = LBound(varList) To UBound(varList)
	If Left(varList(lngCounter),1) <> "D" Then
		With Worksheets("DO2").Range("C:D")
		Set rngFound = .Find( _
		What:=varList(lngCounter), _
		Lookat:=xlWhole, _
		SearchOrder:=xlByRows, _
		SearchDirection:=xlNext, _
		MatchCase:=True _
		)
	End If
Next