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 :

Manipulation objet: Comment désigner une autre colonne


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
    techno
    Inscrit en
    Octobre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : techno
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 128
    Par défaut Manipulation objet: Comment désigner une autre colonne
    Bonjour,

    Je ne maitrise pas du tout les codes objets et cherche à contrôler si une colonne est vide pour agir, mais je ne sais comment faire (ligne en gras).

    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
      Open "D:\Votants.csv" For Output As #1
      
      For Each oL In Plage.Rows 'pour chaque ligne de la plage
        if colonne Q de la même ligne est vide then  'si la colonne "Q" est vide faire 
          Tmp = ""
          For Each oC In oL.Cells   'pour chaque colonne de ligne
            Tmp = Tmp & CStr(oC.Text) & Sep
          Next
          Tmp = Left(Tmp, Len(Tmp) - 1) 'supression du dernier séparateur
          Print #1, Tmp         'impression dans le fichier CSV
        End If
      Next
      Close     'ferme le fichier CSV
    Quelqu'un saura-t-il m'aider, svp?

  2. #2
    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
    Quelqu'un saura-t-il m'aider, svp?
    Et toi : sauras-tu nous dire, pour commencer, où et comment tu as déclaré et initialisé la variable Plage ?

    Intéresse-toi par ailleurs aux propriétés/collections Rows et Columns

  3. #3
    Membre confirmé
    Homme Profil pro
    techno
    Inscrit en
    Octobre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : techno
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 128
    Par défaut
    Oui! unparia,
    voici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub ExporteCSV()
    Dim Plage As Object, oL As Object, oC As Object, Tmp As String, chemin As String, Sep$
    Set Plage = ActiveSheet.Range("B6:C" & ActiveSheet.Range("C65000").End(3).Row)
    je regarde les collections Rows et Columns...merci

  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
    Bon.
    Voilà donc comment elle a été DECLAREE (et mal - trop inutilement évasivement - déclarée. Une plage est un objet Range).

  5. #5
    Membre confirmé
    Homme Profil pro
    techno
    Inscrit en
    Octobre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : techno
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 128
    Par défaut
    C'est un code que j'ai repris.

    voila le début du code entier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dim Plage As Object, oL As Object, oC As Object, Tmp As String, chemin As String, Sep$
     
      chemin = "D:monfichier.xlsm"     
      Worksheets("Votes").Select
      Sep = ","
     
      'Définie la plage de recherche
      Set Plage = ActiveSheet.Range("B6:C" & ActiveSheet.Range("C65000").End(3).Row)

  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
    Une plage est un objet Range

Discussions similaires

  1. Réponses: 6
    Dernier message: 27/01/2016, 07h45
  2. Réponses: 1
    Dernier message: 17/10/2012, 16h18
  3. Comment mettre dans une autre colonne à partir d'une ComboBox?
    Par Paulopiv dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/05/2012, 18h30
  4. Réponses: 3
    Dernier message: 11/03/2010, 11h44
  5. [ADO.NET] Comment rendre une certaine colonne "AutoIncrement" ?
    Par maitrebn dans le forum Accès aux données
    Réponses: 3
    Dernier message: 23/03/2005, 22h12

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