Erreur de compilation membre de méthode ou données introuvable

Résolu
gatagarim - 15 oct. 2012 à 14:49
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 15 oct. 2012 à 19:17
Bonjour

j'ai un probléme au niveau de mon code: erreur de compilation Membre de methode ou de données introuvable. J'essaye de tester mes différents Sub mais ne fonctionne pas si quelqu'un peut m'aider.
Merci d'avance
voici le code:
Option Compare Database
Option Explicit

Public Function DetectionAnomalieChampBoolean(param_1 As Integer, param_2 As Integer) As Boolean

Dim TesterLesChamps As New ChampsTables

'Le param_1 est égale à param_2 s'il y a une anomalie dans les champs des tables
If (TesterLesChamps.param_1 = TesterLesChamps.param_2) Then
DetectionAnomalieChampBoolean = False

Else
DetectionAnomalieChampBoolean = True

End If

Exit Function
End Function

Sub test_DetectionDesChamps()

Dim TesterLesChamps As ChampsTables
MsgBox TesterLesChamps.DetectionAnomalieChampBoolean(False)
MsgBox TesterLesChamps.DetectionAnomalieChampBoolean(True)

End Sub

Public Function RecuperationValeurTablesInteger(T_Compte As String, NumLg As Integer, NumCol As Integer) As Integer

'La recupération des valeurs contenues dans la table T_Compte
Dim Valeurtbl As New ClasseDesVTables
Dim Rs As Recordset
Dim NOCPT As Integer


Set Rs = CurrentDb.OpenRecordset("T_Compte", dbOpenTable, dbReadOnly)

While Not Rs.EOF

MsgBox Rs!NOCPT

Rs.MoveNext

Wend

Rs.Close
Exit Function
End Function
Sub test_RecuperationDesValeurs()

Dim Valeurtb1 As String
MsgBox Valeurtbl.RecuperationValeurTableInteger()

End Sub

Public Function NumAttributTable(nomTable As String, nomAttribut As String) As Integer

Dim Attribut As New ClasseNumAttribut
Dim NumAttribuTable As String

If (Attribut.nomTable = "T_Compte") Then
MsgBox "Affiche la table T_Compte"
If (Attribut.nomAttribut = "ID_T_Compte") Then
Attribut.NumAttribuTable = 1
End If
ElseIf (Attribut.nomAttribut = "NOCPT") Then
Attribut.NumAttributTable = 2
End If
ElseIf (Attribut.nomAttribut = "CodeDepositaire_Entrant") Then
Attribut.NumAttributTable = 3
End If
ElseIf (Attribut.nomAttribut = "CodeDepositaire_Sortant") Then
Attribut.NumAttributTable = 4
End If
ElseIf (Attribut.nomAttribut = "CodeAgence_Entrant") Then
Attribut.NumAttributTable = 5
End If
ElseIf (Attribut.nomAttribut = "CodeAgence_Sortant") Then
Attribut.NumAttributTable = 6
End If
ElseIf (Attribut.nomAttribut = "Nom") Then
Attribut.NumAttributTable = 7
End If
ElseIf (Attribut.nomAttribut = "Lieu dépôt") Then
Attribut.NumAttributTable = 8
End If
ElseIf (Attribut.nomAttribut = "Quantité") Then
Attribut.NumAttributTable = 9
End If

ElseIf (Attribut.nomTable = "Agence") Then
MsgBox " Affiche la table Agence"
End If
If (Attribut.nomAttribut = "ID_Agence") Then
Attribut.NumAttributTable = 1
End If
ElseIf (Attribut.nomAttribut = "NOCPT") Then
Attribut.NumAttributTable = 2
End If
ElseIf (Attribut.nomAttribut = "CodeAgence_Entrant") Then
Attribut.NumAttributTable = 3
ElseIf (Attribut.nomAttribut = "CodeAgence_Sortant") Then
Attribut.NumAttributTable = 4
End If
ElseIf (Attribut.nomAttribut = "CodeDepositaire_Entrant") Then
Attribut.NumAttributTable = 5
End If
ElseIf (Attribut.nomAttribut = "CodeDepositaire_Sortant") Then
Attribut.NumAttributTable = 6
End If
End If
End Function

Sub testNumAttributTab()

Dim Attribut As String
MsgBox Attribut.NumAttributTable

End Sub
Public Function TailleTable(Agence As String) As Integer

Dim TesterLaTaille As New ClasseAgence

'Le nombre de lignes dans la table
Dim NBLg As String

TesterLaTaille.NBLg = "select count(*) from Agence"

Exit Function

End Function
Sub test_tailleDesTables()
Dim TesterLaTaille As String
MsgBox TesterLaTaille.TailleTable
End Sub



Sub Main()

Dim TesterLesChamps As New tpTest

'Le numero des lignes erronées dans la table
Dim creationTab() As Integer, z As Integer, i As Integer, j As Integer
Dim T_Compte As String, NOCPT As String, Agence As String

z = 0 'Choisir la 1ére ligne de la colone

For i = 1 To TailleTable(T_Compte)
Next i

Dim NOCPT_Cpt As Integer
Dim NOCPT_Agence As Integer

Dim comparaison_1 As Boolean
For j = 1 To TailleTable(Agence)
Next j

'Recupération du numéro de compte de la 1ére ligne de la table T_Compte
Valeurtbl.NOCPT_Cpt = RecuperationValeurTableInteger(T_Compte, Attribut.NumAttributTable(T_Compte, NOCPT), i)

'Recupération du NOCPT sur la 1ére ligne de la table Agence
Valeurtbl.NOCPT_Cpt = RecuperationValeurTableInteger(Agence, Attribut.NumAttributTable(T_Compte, NOCPT), j)

comparaison_1 = DetectionAnomalieChampBoolean(NOCPT_Cpt, NOCPT_Agence)
If (comparaison_1 = False) Then
'MsgBox "Anomalie"
'break


ElseIf (comparaison_1 = True) Then
'MsgBox "Pas d'anomalies"
creationTab(z) = i
z = z + 1
End If


MsgBox ChampsTables.DetectionAnomalieChampBoolean(False)
MsgBox ChampsTables.DetectionAnomalieChampBoolean(True)
MsgBox Valeurtbl.RecuperationValeurTableInteger()
MsgBox Attribut.NumAttributTable()
MsgBox TesterLaTaille.TailleTable()
Exit Sub
End Sub

4 réponses

lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
15 oct. 2012 à 15:56
Bonjour,

Oui et sur quelle ligne ?
As-tu essayé en mode pas à pas?
Quand tu postes un code, merci d'utiliser la coloration syntaxique (3eme icone en partant de la droite).

L'expérience, c'est une connerie par jour, mais jamais la même..
3
C'est vrai,les problémes se situent au niveau des procedures c'est-à-dire les Sub.


j'ai un probléme au niveau de mon code: erreur de compilation Membre de methode ou de données introuvable.
voici le code:
Option Compare Database
Option Explicit

Public Function DetectionAnomalieChampBoolean(param_1 As Integer, param_2 As Integer) A
0
Utilisateur anonyme
15 oct. 2012 à 17:32
Bonjour,

Je pense que tu aurais un sérieux besoin de fournir un code indenté et lisible. Sinon, je doute que beaucoup fassent l'effort de s'arracher les yeux et les cheveux.




j'ai un probléme au niveau de mon code: erreur de compilation Membre de methode ou de données introuvable.

Public Function DetectionAnomalieChampBoolean(param_1 As Integer, param_2 As Integer)


Donc, param_1 et param_2 sont inexistants, non déclarés ou du mauvais type.
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
15 oct. 2012 à 19:17
Bonjour,

Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).

Code illisible, j'attends qu'il soit mise en forme.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
0
Rejoignez-nous