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 :

verifier si une cellule est vide


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
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 42
    Par défaut verifier si une cellule est vide
    Bonjour a tous,

    Voila mon bout de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Range("C1").Value = c
        If c <> " " Then
        ...
    J'aimerai faire une condition qui vérifie si ma case est vide. cela ne marche pas visiblement et je ne comprend pas pourquoi. Je declare ma variable c en string, Quelqu’un aurait-il une solution?

    merci

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    merci d'utiliser la prochaine fois l'icône # dédiée au code …

    Egal à espace ne veut donc pas dire égal à vide ‼

    Suffit d'enlever l'espace des guillemets …


    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 42
    Par défaut
    Dak merci mais cela ne marche toujours pas alors je vous montre mon code en entier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Sub test()
        Dim i As Integer
        Dim c As String
        i = 1
        c = Range("A" & i).Borders.Value
        If c <> "" Then
            If Range("A" & i).Value = 1 Then
                Range("A" & i).Borders.Value = 1
            End If
            i = i + 1
            c = Range("A" & i).Value
        End If
    End Sub
    En fait j'ai une serie de "1", "2" et "3" sur ma colonne A et j'aimerai parcourir cette colonne et entourer tout les 1 jusqu'à ce qu'on tombe sur une case vide. Seulement c'est bizarre, en pas à pas j'observe que c prend la valeur "4192" en chaine de caratere et le premier if ne fait qu'une itération.

    PS: ma premiere case A1 n'est pas vide.

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Non c'est tout à fait normal vu la ligne n°6 ‼

    Comparer donc ce qu'elle fait et ce qu'elle devrait faire …

    Rien qu'en la comparant avec la ligne n°8 …

    Ne pas confondre valeur d'une cellule et bordures d'une cellule …

  5. #5
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Une proposition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub test()
    Dim Cel As Range
        For Each Cel In Range("A1:A" & Range("A1").End(xlDown).Row)
            If Cel = 1 Then Cel.Borders.Value = 1
        Next Cel
    End Sub
    Cordialement.

  6. #6
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 42
    Par défaut
    Effectivement j'avais pas fais attention. je retape le code sans "borders":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Sub test()
        Dim i As Integer
        Dim c As String
        i = 1
        c = Range("A" & i).Value
        If c <> "" Then
            If Range("A" & i).Value = 1 Then
                Range("A" & i).Borders.Value = 0
            End If
            i = i + 1
            c = Range("A" & i).Value
        End If
    End Sub
    Cette fois en pas a pas c prend bien la valeur "3" (Ma valeur dans A1), i s'incremente bien, mais contre toute attente l'instruction ne reboucle pas au if mais sort avec un c egal à "3"..

  7. #7
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Quelle boucle ?

    Il n'y en a pas !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Demo()
        R& = 1
     
        Do Until Cells(R, 1).Value = ""
            If Cells(R, 1).Value = 1 Then Cells(R, 1).Borders.Value = 0
            R = R + 1
        Loop
    End Sub
    Comme la proposition de gFZT82, cela revient au même !

    Je serais passé par [A1].CurrentRegion.Columns(1)


    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …


    __________________________________________________________________________________________
    La connaissance, c'est comme la confiture, moins on en a plus on l'étale !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/06/2008, 18h57
  2. [VBA-E]Tester si une cellule est vide dans un cas particulier
    Par tonnick dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/09/2007, 10h12
  3. comment verifier si la cellule est vide
    Par k-eisti dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/04/2007, 13h40
  4. Réponses: 2
    Dernier message: 06/04/2007, 13h31
  5. Tester si une cellule est vide
    Par amka dans le forum Access
    Réponses: 1
    Dernier message: 09/08/2006, 15h58

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