It isn't. Your query is returning a single value, not a column. If you use an aggregate function to get a value you have to specify its name if you want to use it as a column, e.g.
Code:
SELECT Max(JobNo) AS MaxJobNo FROM Jobs
Having said that, if you're just getting a single value from a database then there shouldn't be any DataSets or DataTables involved:
VB Code:
Dim myConnection As New SqlConnection("connection string here")
Dim myCommand As New SqlCommand("SELECT MAX(job_no) FROM Jobs WHERE myusername = @myusername", myConnection)
myCommand.Parameters.AddWithValue("@myusername", Nowuser)
myConnection.Open()
Dim result As Object = myCommand.ExecuteScalar()
If result Is Nothing Then
MessageBox.Show("No jobs for specified user.")
Else
Dim maxJobNo As Integer = CInt(result)
MessageBox.Show("Max job no: " & maxJobNo)
End If
myConnection.Close()