... but cannot find how to set the focus of a control using it's tag.
You can't.
You can get the EditText with ScrollView1.Panel.GetView(Index)
The index depends on how you filled the ScrollView.
The view index begins with 0 and is incremented by one each time you add a new view.
Example: If have on each line a Label, an EditText and a CheckBox.
The Tag property of each view is the row index.
View Line Index
Label0____ 0 0
EditText0 _ 0 1
CheckBox0 0 2
Label1____ 1 3
EditText1_ 1 4
CheckBox1 1 5
Label2____ 2 6
EditText2_ 2 7
CheckBox2 2 8
The the index of EditText2 in row 2: rowIndex * 3 + 1 = 2 * 3 + 1 = 7
Dim edt As EditText
edt = ScrollView1.Panel.GetView(row * 3 + 1)
edt.RequestFocus
In this example 3 is the number of views per row.