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

VB.NET Discussion :

Erreur 91 : problème d'affectation ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 93
    Par défaut Erreur 91 : problème d'affectation ?
    Je suis novice en VB et je dois pour un projet réaliser une macro pour Excel. Le principe est de parcourir toutes les cellules de la colonne A (ce sont les seules qui sont remplies) lorsqu'elles ne sont pas vides et de copier des "petits bouts" de ce que contiennent ces cellules sur une colonne différente mais la même ligne (donc on obtient un tableau propre après...)

    Voici mon code :
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    Sub affectation(sht As Worksheet)
    Application.ScreenUpdating = False
    
    Dim I As Range
    Dim heures As Variant
    Dim minutes As Variant
    Dim secondes As Variant
    Dim centiemes As Variant
    Dim longueur As Variant
    Dim vitesse_1boucle As Variant
    Dim vitesse_2boucles As Variant
    Dim amplitude As Variant
    Dim tampon As String
    
        Set I = sht.Range("A1")
        While Not IsEmpty(I)
        
            tampon = sht.Range("A" & I.Row).Value
            
                'Isoler les heures
                heures = Mid(tampon, 2, 3)
                sht.Range("D" & I.Row).Value = heures
                
                'Isoler les minutes
                minutes = Mid(tampon, 4, 5)
                sht.Range("E" & I.Row).Value = minutes
                
                'Isoler les secondes
                secondes = Mid(tampon, 6, 7)
                sht.Range("F" & I.Row).Value = secondes
                
                'Isoler les centiemes de seconde
                centiemes = Mid(tampon, 8, 9)
                sht.Range("G" & I.Row).Value = centiemes
                
                'Isoler la longueur du véhicule
                longueur = Mid(tampon, 26, 28)
                sht.Range("H" & I.Row).Value = longueur
                
                ' Isoler les vitesse (1 boucle et 2 boucles)
                vitesse_1boucle = Mid(tampon, 15, 17)
                sht.Range("I" & I.Row).Value = vitesse_1boucle
                vitesse_2boucles = Mid(tampon, 18, 20)
                sht.Range("J" & I.Row).Value = vitesse_2boucles
                
                ' Isoler l'amplitude du signal sur le capteur d'entrée
                amplitude = Mid(tampon, 31, 35)
                sht.Range("K" & I.Row).Value = amplitude
                
                ' Nettoyage de la cellule "A" & I.Row
                sht.Range("A" & I.Row).Value = ""
                
                'Passage à la ligne suivante
                Set I = sht.Range("A" & I.Row + 1)
        Wend
    Application.ScreenUpdating = True
    End Sub
    A la ligne en gras, j'obtient une erreur '91' : "variable objet ou variable de bloc With non définie"...

    J'ai cherché sur des forums avant de poster, mais je ne trouve pas de réponse à cette erreur...

    Merci de m'éclairer !

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 35
    Par défaut
    un range n'est -il pas défini par deux valeurs ?
    genre i = sht.range("A1:A100) ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 93
    Par défaut
    En fait, j'ai trouvé après une journée de boulot dessus... LE problème ne venait pas du range. Il fallait juste remplacer "sht" par ActiveSheet...
    Je ne sais pas si c'est une réelle solution mais en tous cas ça marche !

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

Discussions similaires

  1. Erreur #1064 - Problème ALTER TABLE
    Par 12_darte_12 dans le forum Requêtes
    Réponses: 6
    Dernier message: 08/03/2006, 16h25
  2. Erreur 1064 - Probléme de versions
    Par thibaut06 dans le forum Requêtes
    Réponses: 2
    Dernier message: 12/11/2005, 17h22
  3. Problème d'affectation de variable
    Par bob33 dans le forum C
    Réponses: 3
    Dernier message: 04/11/2005, 18h01
  4. problème d'affectation de tableau ...
    Par Mike888 dans le forum C
    Réponses: 23
    Dernier message: 26/02/2005, 15h52
  5. Entier 64 bits sous linux, problème d'affectation
    Par Steki-kun dans le forum Linux
    Réponses: 2
    Dernier message: 13/01/2005, 22h10

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