Ma variable "masque une variable dans un bloc englobant"
Bonjour,
Je suis étudiant en BTS d'informatique de Gestion, et je dois programmer du VB (:aie:), je ne sais d'ailleurs pas trop si je suis dans le bon forum :?
Enfin, voici mon probléme, Visual Studio me dit "La variable myReader masque une variable dans bloc englobant" ...
Voici le code concerné:
Feuille principale:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| Public Sub BddLecture(ByVal requeteSql As String, ByRef myReader As OleDbDataReader)
'Variables
Dim commande As OleDbCommand
Dim connexion As OleDbConnection
Try
'Connexion a la Base, et récupération de connexion
BddConnect(connexion)
'Instantiation de l'objet commande
commande = New OleDbCommand(requeteSql, connexion)
'Execution de la requete
Dim myReader As OleDbDataReader = commande.ExecuteReader()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation, Me.Text)
End Try
End Sub |
Feuille secondaire:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| Private Sub ListeProfesseurs_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim FeuilleGestionStage As New FormGestionStage
Dim FinMyReader As Boolean
Dim myReader As OleDbDataReader
Try
FeuilleGestionStage.BddLecture("SELECT * FROM Profs ORDER BY nomProf", myReader)
If myReader.Read() Then
FinMyReader = False
Else
FinMyReader = True
End If
While Not FinMyReader
MsgBox("Nom: " + myReader("nomProf") + "Prenom: " + myReader("prenomProf"))
If myReader.Read() Then
FinMyReader = False
Else
FinMyReader = True
End If
End While
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation, Me.Text)
End Try
End Sub |
Dans ma première feuille, la variable myReader vers la ligne 11 est dite ""La variable myReader masque une variable dans bloc englobant"
Je sais que le probléme vient du fait de tout séparer en fonctions, puisque si j'écris tout sur une page, ca fonctionne.
Mais je souhaite pouvoir séparer au maximum a l'aide de fonctions.
Mais je ne vois pas trop comment faire.. Le VB et moi .. hein lol
Merci d'avance!