I don't think that will work in the case where the name is filled but the skills are blank. Assigning values to the middle of a string in this way will still overwrite the information (at least in my testing just now). If there isn't a specific reason to use tabs in the file to separate the data, then I recommend using commas or semicolons. That way you can use the Split function to return an array of values:
Private Sub Command1_Click()
Dim strTest As String
Dim res() As String
strTest = "Language;Skills;Name"
res = Split(strTest, ";"
MsgBox res(0) & vbTab & res(1) & vbTab & res(2)
End Sub
if you have a situation where something is missing from strTest, but the semicolon delimiter is still holding its place, you can still use this:
Private Sub Command1_Click()
Dim strTest As String
Dim res() As String
strTest = "Language;;Name"
res = Split(strTest, ";"
MsgBox res(0) & vbTab & res(1) & vbTab & res(2)
End Sub
In this case res(1) will contain an empty string value. Now it's just a matter of checking wheather each element of the res array has data, if not use the index to determine what data is supposed to be there. Hopefully that will work for u.
-Mike
* as an afterthought, it may be possible to pass vbTab as the delimeter argument to the Split function. If so, then you should be able to use the text format you already have, assuming that tabs are actually present where the information is missing.
Difference between a madman and a genius:
A madman uses his genius destructively,
A genius uses his madness constructively.