IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Erreur de compilation - Incompatibilité de type - Variable Public as Byte [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Finance d'entreprise
    Inscrit en
    Juin 2016
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Finance d'entreprise
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2016
    Messages : 184
    Par défaut Erreur de compilation - Incompatibilité de type - Variable Public as Byte
    Bonjour,

    Un module ne peut pas se compiler à cause d'une incompatibilité de type.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Sub Compare()
    
            Application.ScreenUpdating = False
    
            Dim i As Byte
            Dim chem As String
            
            Select Case MsgBox("Choisissez le même fichier, mais du mois précédent.")
            Case vbOK
                Set rep = Application.FileDialog(msoFileDialogFilePicker)
            Case vbCancel
                Exit Sub
            End Select
                rep.Show
            If rep.SelectedItems.Count > 0 Then
                chem = rep.SelectedItems(1)
                Nfichier = ""    'Work in progress
            Else
                Exit Sub
            End If
    For f = 1 To Sheets.Count
        With Sheets(f)
        For i = 9 To Cells(Columns(1).Rows.Count, 2).End(xlUp).row
            .Cells(i, "H").FormulaR1C1 = "=RC[-5]-'[" _
                & Nfichier & "]" _
                & .Name & "'!RC3"
        Next
        End With
    Next f
    
    End Sub
    C'est la variable "f" soulignée en gras qui pose problème.
    Elle est déclarée de cette façon dans un module à part:
    Ce qui est étrange, c'est que j'utilise "f" dans d'autres modules dans une instruction For...Next et il n'y a pas de problème.

    Cordialement

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Tu as combien de feuilles dans ton classeur ?

    Philippe

  3. #3
    Membre confirmé
    Homme Profil pro
    Finance d'entreprise
    Inscrit en
    Juin 2016
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Finance d'entreprise
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2016
    Messages : 184
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Tu as combien de feuilles dans ton classeur ?
    Oui, j'aurais dû le préciser. Une dizaine, donc moins de 255.

    J'en profite pour ajouter que si je (re)déclare "f" en début de procédure:
    il n'y a alors plus de problème de compilation...

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Si tu as bien déclaré la variable f en public dans un module standard, il n'y a selon moir qu'une explication plausible : un conflit de nom identiques pour deux choses distinctes.
    Cherche partout dans ton projet (edition --->> rechercher) où tu as "f =" ou "f as" et regarde s'il s'agit toujours de la même chose.

  5. #5
    Membre confirmé
    Homme Profil pro
    Finance d'entreprise
    Inscrit en
    Juin 2016
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Finance d'entreprise
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2016
    Messages : 184
    Par défaut
    Citation Envoyé par unparia Voir le message
    Bonjour
    Si tu as bien déclaré la variable f en public dans un module standard, il n'y a selon moir qu'une explication plausible : un conflit de nom identiques pour deux choses distinctes.
    Cherche partout dans ton projet (edition --->> rechercher) où tu as "f =" ou "f as" et regarde s'il s'agit toujours de la même chose.
    Bravo unparia! Ton intuition était la bonne!

    J'avais:en début de module.

    Merci pour votre aide!

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bravo unparia! Ton intuition était la bonne!
    Ce n'était pas une "intuition", à proprement parler

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/07/2016, 12h25
  2. [XL-2013] Erreur de compilation : incompatibilité de type
    Par OXdOZ dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 24/06/2016, 11h47
  3. Réponses: 2
    Dernier message: 11/12/2009, 23h27
  4. Erreur de compilation : has incomplete type
    Par Plomeg dans le forum C++
    Réponses: 2
    Dernier message: 25/04/2009, 14h19
  5. erreur de compilation : probleme avec type de structure dans une classe
    Par medkarim dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 21/10/2008, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo