Paul - I think this is the right idea. I've edited my loop to include the following bolded If statement:

Do Until EOF(1)
    Line Input #1, InData
    
    SheetName = GetSubString(InData, Chr(9), 1)
    NamedRng = GetSubString(InData, Chr(9), 2)
    NewVal = GetSubString(InData, Chr(9), 3)


    Set WS = ThisWorkbook.Sheets(SheetName)
    
    Target = NamedRng
    
    If WS.Range(NamedRng).Count > 1 Then
        WS.Range(NamedRng).Cells(0 + r, 0 + c) = NewVal
        c = c + 1
    Else
        WS.Range(Target) = NewVal
    End If
    
Loop
Where r and c are set to 1. This works correctly for the first row of the named range, but I need to find a way to set r = r + 1 once the last column of the row is written in. Any ideas?