![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Visio Forum d'entraide sur Microsoft Office Visio (schémas et diagrammes) |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Invité de passage
![]() Date d'inscription: mai 2008
Messages: 7
|
Bonjour
J'arrive bien a importer des données dans visio a partir d'excel, mais je n'arrive pas a trouver la facon d'importer des dates jj/mm/aaaa au format date. Ensuite dans les rapports je bloque car je voudrais faire des requetes sur l'année et bien entendu cela ne fonctionne pas Il y a bien la possibilité de séparer sous xls, l'année en en faisant un champ spécifique mais cela est moyen... Merci |
|
|
|
|
|
#2 (permalink) |
|
Membre régulier
![]() Date d'inscription: mai 2008
Âge: 23
Messages: 136
|
Bonjour
si tu utilise VBA pour importer tes données tu peut essayer Code :
date_m = Format(date_m, "dd-MM-yyyy") Mais tu peut préciser comment tu importe tes données ( Programme VBA, Basse de données, Module Visio,..) |
|
|
|
|
|
#3 (permalink) |
|
Invité de passage
![]() Date d'inscription: mai 2008
Messages: 7
|
Merci, je vais tester
J'utilise le module complémentaire, d'importation des données. J'ai cherché ce week end et j'ai trouvé une solution (un peu bizarre mais bon) Prendre une icone (ex icone de pc), lui enlever l'ensemble des propriétés prédéfinies, l'ajouter aux favoris, et mettre à jour l'icone dans son gabarit (on obtient une icone personnalisée vierge) faire une importation d'une seule ligne excel pour cette icone de pc, (pour avoir les champs du fichier excel pour un enregistrement) Remarque, les champs importés sont triés par la première lettre de la propriété (en cas de besoin de modification d'ordre, il faut passer en mode développeur et attribuer un numéro d'ordre d'affichage à chaque propriété) modifier les propriétés des champs locaux importés qui sont (et c'etait mon probleme en format texte (on obtient un objet avec les propriétés sous la forme voulue: format date pour certains champs) Ensuite, définir cette icone/modele local comme modele global Enfin, utiliser ce modèle global et l'attribuer à la forme pc, puis importer l'ensemble des champs du fichier excel par le module complémentaire J'ai déjà vu plus simple... C'est dommage que la communauté VISIO soit peu importante sur internet, et que microsoft n'ait pas mis les fonctions pourtant logiques dans ce super logiciel... Avec quelques améliorations simples, cela en ferait le meilleur logiciel de suivi d'inventaires statique, par rapport aux usines à gaz du marché... |
|
|
|
|
|
#4 (permalink) |
|
Membre régulier
![]() Date d'inscription: mai 2008
Âge: 23
Messages: 136
|
Eh ben
Si j’ai bien compris tu créer une forme de gabarit vierge que tu initialise avec les données Excel, pour avoir un modèle. Mais ton problème de format texte, je vois pas ?? Car tu peut toujours changer ton format dans la Shapesheet, Non ! Tu peut essayer aussi de mettre ton format date dans la shapesheet ="{{dd- MM -yyyy}}" Mais en VBA se format n’est pas pris en compte quand on enregistre une valeur dans la cellule Je ne sais pas pour le module importation de base de données (a voir) Sinon, le faite de modifier le format des cellules de Excel permet peut être s d’avoir directement le type de données voulu dans Visio ? Si tu développe sur Visio je te conseille d’installer le SDK si se n’est pas fait Dans google tu met SDK Visio C’est un logiciel d’aide de développement sur Visio très utile pour avoir les syntaxes pour VBA ou la sapesheet Visio a des capacités insoupçonnés met reste limite dans les domaines dynamique Bonne continuation |
|
|
|
|
|
#5 (permalink) |
|
Invité de passage
![]() Date d'inscription: mai 2008
Messages: 7
|
Bonjour
Le problème de l'importation des données excel par le module complémentaire c'est que le module, quelquesoit le format de la cellule du fichier excel (texte, date ou autre) l'importe uniquement comme une donnée texte Dans visio, si on fait cette importation pour de nombreuses valeurs (exparc informatique de 450 Pc) il faut repasser sur les 450 et modifier les X champs dans le bon format... c'est un peu long... |
|
|
|
|
|
#6 (permalink) |
|
Membre régulier
![]() Date d'inscription: mai 2008
Âge: 23
Messages: 136
|
Ok je comprend mieux maintenant
voici un bout de code pour éviter de tous retaper dans tes formats Code :
Dim all_shape As Visio.Shape Dim shape_Pc As Visio.Shape 'récupération de tous les objets de la page Set all_shape = ThisDocument.Application.ActivePage.Shapes 'parcour des objets For Each shape_Pc In all_shape 'si l'objet a une parti du nom qui est = PC If InStr(shape_Pc, "PC") Then 'Changer la cellule de format shape_Pc.Cells("Prop.p1.Format").Result(0) = "{{dd- MM -yyyy}}" ' format date shape_Pc.Cells("Prop.p2.Format").Result(0) = "0" ' format nombre ‘…… End If Next c'est une solution parmi d'autre tu peut aussi trouver un moyen en fonction de tes exploitation de tes données. Normalement tu peut préciser le type de données dans l’assistant base de données du module complémentaire : CURRENCY , DATETIME, NUMBER, VARCHAR, LOGICAL |
|
|
|
|
![]() |
![]() |
||
Comment importer champs au format date dans visio
|
||
| Outils de la discussion | |
|
|