Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

bug etat analyse croisée

1 réponse
Avatar
Macgiver
Bonnour a tous j'ai ce code que j'ai trouvé pour paramétrer un état avec
requete analyse croisée et j'ai une erreur dans la section Detail_print à la
ligne suivante : Nblignes = Nblignes + Me("Detail" + Format(entX)) et qui
me dit incompatibilité de type. mais je ne sais pas où est le bug.
pouvez-vous m'aider


merci a tous

Option Compare Database

' ***** déclaration des variables ***** '
Const Nombre_colonnes = 27 ' Nombre maximum d'étiquettes sur l'état (par
rapport à l'exemple) & _
on peut en afficher plus et donc modifier cette variable
Dim dbBase As DAO.Database
Dim rstEnregistrement As DAO.Recordset
Dim NbColonnes As Integer
Dim Total_colonnes(1 To Nombre_colonnes) As Long
Dim Total_etat As Long

Private Sub Initvar()

Dim entX As Integer
Total_etat = 0

For entX = 1 To NbColonnes
Total_colonnes(entX) = 0
Next entX

End Sub

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)

Dim entX As Integer

If Not rstEnregistrement.EOF Then
If Me.FormatCount = 1 Then
For entX = 1 To NbColonnes
Me("Detail" + Format(entX)) = Nz(rstEnregistrement(entX -
1), 0)
Next entX

For entX = NbColonnes + 2 To Nombre_colonnes
Me("Detail" + Format(entX)).Visible = False
Next entX

rstEnregistrement.MoveNext
End If
End If

End Sub

Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)

Dim entX As Integer
Dim Nblignes As Variant

If Me.PrintCount = 1 Then
Nblignes = 0

For entX = 2 To NbColonnes
Nblignes = Nblignes + Me("Detail" + Format(entX)) '(******J'ai
mon erreur ici me disant incompatibilité de type*****
Total_colonnes(entX) = Total_colonnes(entX) + Me("Detail" +
Format(entX))
Next entX

Me("Detail" + Format(NbColonnes + 1)) = Nblignes
Total_etat = Total_etat + Nblignes
End If

End Sub

Private Sub Détail_Retreat()

rstEnregistrement.MovePrevious

End Sub
Private Sub EntêteÉtat_Format(Annuler As Integer, FormatCount As Integer)

rstEnregistrement.MoveFirst
Initvar

End Sub

Private Sub PiedÉtat_Format(Cancel As Integer, FormatCount As Integer)
Dim entX As Integer

' Affecte la valeur Total_Colonne(entX) des champs en colonne au champs
total
For entX = 2 To NbColonnes
Me("Total" + Format(entX)) = Total_colonnes(entX)
Next entX

' Place TotalEtat dans une boite de texte dans le pied d'état.
Me("Total" + Format(NbColonnes + 1)) = Total_état

' Cache les zones de texte inutilisées dans le pied d'état.
For entX = (NbColonnes + 2) To Nombre_colonnes
Me("Total" + Format(entX)).Visible = False
Next entX

End Sub

Private Sub Report_Close()
rstEnregistrement.Close

End Sub

Private Sub Report_NoData(Cancel As Integer)
MsgBox "Aucun enregistrement n'a été trouvé.", vbExclamation, "Information"
rstEnregistrement.Close
Annuler = True
End Sub

Private Sub Report_Open(Cancel As Integer)
Dim rstRequete As DAO.QueryDef

Set dbBase = CurrentDb
Set rstRequete = dbBase.QueryDefs("R_resume_jauge2")
Set rstEnregistrement = rstRequete.OpenRecordset()

'Définit le nombre de colonnes de la requête
NbColonnes = rstRequete.Fields.Count
End Sub

Private Sub ZoneEntêtePage_Format(Cancel As Integer, FormatCount As Integer)
Dim entX As Integer

' Met les entêtes de colonnes
' dans des zones de texte dans la section Entête.
For entX = 1 To NbColonnes
Me("Entete" + Format(entX)) = rstEnregistrement(entX - 1).name
'Me.Entete Format(entX) = rstEnregistrement(entX - 1).name
Next entX

' Crée l'entête Totaux de la prochaine zone de liste disponible.
Me("Entete" + Format(NbColonnes + 1)) = "Totaux"

' Cache les zones de texte inutilisées dans la section Entête.
For entX = (NbColonnes + 2) To Nombre_colonnes
Me("Entete" + Format(entX)).Visible = False
Next entX

End Sub

1 réponse

Avatar
3stone
Salut,

Macgiver wrote:
Bonnour a tous j'ai ce code que j'ai trouvé pour paramétrer un état
avec requete analyse croisée et j'ai une erreur dans la section
Detail_print à la ligne suivante : Nblignes = Nblignes + Me("Detail"
+ Format(entX)) et qui me dit incompatibilité de type. mais je ne
sais pas où est le bug. pouvez-vous m'aider




Nblignes = Nblignes + Me("Detail" & entX)

devrait le faire...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)