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

VBA Project Discussion :

Lire le contenu d'une colonne text2 [PR-2013]


Sujet :

VBA Project

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2012
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 317
    Points : 101
    Points
    101
    Par défaut Lire le contenu d'une colonne text2
    Bonjour à tous

    J'ai ajouté une colonne Text2 ou j’écris des lieux, mais j'ai l'impression que les données ne sont pas assignées aux tâche car l'assignement.text2 = "", Task.text2 = "", etc...

    Voici le code qui exporte dans excel le planning mais qui refuse obstinément d'exporter ma colonne Text2

    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
     
    Sub TaskHierarchy()
     
    Dim xlApp As Excel.Application, XlRange As Excel.Range
    Dim xlBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet
    Dim Proj As Project, NomL As String, NomR As String
    Dim t As Task, Ligne As Integer, i As Integer
    Dim Asgn As Assignment, Res As Resource
    Dim ColumnCount, Columns, Tcount As Integer
     
     
    On Error Resume Next
     
    AppActivate "Microsoft Excel"
    Set xlApp = GetObject(, "Excel.Application")
      'Récupération du classeur par défaut
    Set xlBook = xlApp.ActiveWorkbook
        'Récupération de la feuille par défaut
    Set xlSheet = xlBook.Worksheets("planing.mpp")
    Set XlRange = xlApp.Range("a1")
     
    XlRange.Range("a1").Select
     
    'besoin du nombre de colonnes dans Excel (égal à la plus grande valeur du code
    'hiérarchique
    ColumnCount = 0
    For Each t In ActiveProject.Tasks
    If Not t Is Nothing Then
    If t.OutlineLevel > ColumnCount Then
    ColumnCount = t.OutlineLevel
    End If
    End If
    Next t
    'Défini la zone de cellule pour écrire la première cellule
    Set xlRow = xlApp.ActiveCell
    xlRow = xlRow
    xlRow = "Filename: " & ActiveProject.Name
    dwn 1 'utilise la routine dwn définie plus bas
    xlRow = "OutlineLevel"
    dwn 1
    'Création des labels de colonnes
    For Columns = 1 To (ColumnCount + 1)
    Set xlCol = xlRow.Offset(-1, Columns - 1)
    xlCol = Columns - 1
    Next Columns
    rgt 1 'utilise la routine rgt définie plus bas
     
    'Entêtes des colonnes
    xlCol = "Formateur"
    rgt 1
    xlCol = "Durée"
    rgt 1
    xlCol = "Date de Début"
    rgt 1
    xlCol = "Date de Fin"
    rgt 1
    xlCol = "Initiale formateur"
    rgt 1
    xlCol = "Lieu"
    rgt 1
     
    Tcount = 0
     
    For Each t In ActiveProject.Tasks
     
    If Not t Is Nothing Then
     
    Set xlCol = xlRow.Offset(0, t.OutlineLevel)
    xlCol = t.Name
    If t.Summary Then
    xlCol.Font.Bold = True
    End If
    For Each Asgn In t.Assignments
     
    dwn 1
    Set xlCol = xlRow.Offset(-1, Columns - 1)
     
    xlCol = Asgn.ResourceName ' exporte le nom de la ressource
    rgt 1
    xlCol = (Asgn.Work / 60) 'exporte la durée de la tâche
    rgt 1
    xlCol = Asgn.Start 'exporte la date de début
    rgt 1
    xlCol = Asgn.Finish 'exporte la date de fin
    rgt 1
    xlCol = Asgn.Resource.Initials 'exporte le nom abréger de la ressource
    rgt 1
     
    xlCol = Asgn.Text2 'devrait exporter le lieux mais Text2 reste désespérément vide alors que la cellule est renseignée
    rgt 1
     
    Next Asgn
     
    Tcount = Tcount + 1
    End If
     
     
    Next t
    Je ne connais pas bien Project alors si quelqu'un sait comment assigné les valeurs de la colonne text2 au tâche afin d'enfin pouvoir les écrire dans excel sur la bonne ligne, se serait super...

    Merci d'avance

  2. #2
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2012
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 317
    Points : 101
    Points
    101
    Par défaut
    Finalement à force de bricoler, voilà la solution

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    xlCol = Asgn.Task.Text2

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 30/06/2006, 15h26
  2. [Débutant]Comment lire le contenu d'une Listview ?
    Par PierreBord dans le forum Composants VCL
    Réponses: 2
    Dernier message: 13/02/2006, 16h40
  3. Réponses: 1
    Dernier message: 29/12/2005, 18h04
  4. Lire le contenu d'une page web grâce à un script PHP
    Par BloodyImp dans le forum Langage
    Réponses: 3
    Dernier message: 06/11/2005, 22h29
  5. Index sur le contenu d'une colonne XMLTYPE
    Par haugoyard dans le forum Oracle
    Réponses: 7
    Dernier message: 11/04/2005, 11h10

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