uses the delimiter characters to decide the data type of each item and treat it appropriately:
Sub ReadStringsWithDelimiters() Dim sLine As String Dim sFName As String 'Path and name of text file Dim iFNumber As Integer 'File number Dim lRow As Long 'Row number in worksheet Dim lColumn As Long 'Column number in worksheet Dim vValues As Variant Dim vValue As Variant Dim iCount As Integer Const sVS As String = ";" 'Variable separator character Const sTD As String = """" 'Text delimiter character Const sDD As String = "#" 'Date delimiter character sFName = "C:\Delimited.txt" iFNumber = FreeFile Open sFName For Input As #iFNumber Do Line Input #iFNumber, sLine vValues = Split(sLine, sVS) For Each vValue In vValues Select Case Left(vValue, 1) 'String Case sTD Debug.Print Mid(vValue, 2, Len(vValue) - 2) 'Date Case sDD Debug.Print DateValue(Mid(vValue, 2, Len(vValue) - 2)) 'Other Case Else Debug.Print vValue End Select Next vValue 'Loop until end of file Loop Until EOF(iFNumber) Close #iFNumber