[Catégorie modifiée .Net -> VBA] fixer définitivement un objet image dans un wor
julasse
Messages postés6Date d'inscriptionmercredi 25 août 2010StatutMembreDernière intervention22 avril 2011
-
21 avril 2011 à 10:44
julasse
Messages postés6Date d'inscriptionmercredi 25 août 2010StatutMembreDernière intervention22 avril 2011
-
22 avril 2011 à 08:27
Bonjour tout le monde
petite question que caracole dans ma tete et qui ne trouve pas solution sur vBfrance et google.
Je travail sur un document word à partir d'un userform. Je souhaite insérer une image (cadre image déjà inséré dans le word).
J'ai donc un textbox avec le chemin qui va chercher l'image .. tout va bien..
L'image s’insère, pas de problème. Mais lorsque je supprime toute les macros pour avoir un texte brut, mes images disparaissent.
J'aurais souhaiter fixer définitivement les images avant de supprimer les macros
code:
'insertion du plan général
plangeneral = tbx102.Text 'sans accent, c'est le chemin
Dim plangénéral As Image 'avec accent, c'est l'objet image dans le word
Set plangénéral = ThisDocument.plangeneral
plangénéral.Picture = LoadPicture(plangeneral)
Merci à tous
A voir également:
[Catégorie modifiée .Net -> VBA] fixer définitivement un objet image dans un wor
julasse
Messages postés6Date d'inscriptionmercredi 25 août 2010StatutMembreDernière intervention22 avril 2011 21 avril 2011 à 14:47
Alors, pour détaillé mon truc.
j'ai un userform, avec tout un tas de checksbox, textbox,... qui viennent s'inserer dans les signet du word.
Lorsque j'ai tout validé (checksboxs cochées, textbox remplis, chemins des images,....), j'ai un bouton qui génère tout mon word. A la fin du transfert des données du userform au word j'ai une boite de dialog qui s'ouvre pour enregistrer le fichier dans un dossier spécifique(manoeuvre pour éviter d'écraser le fichier initial et vierge dans lequel j'ai toute les macros). Une fois le nouveau fichier enregistrer, n'ayant plus besoin d'aucune macros, je supprime tout les codes et userforms sur mon nouveau document. Ainsi lorsque je l'ouvre, j'ai plus que le texte sans aucune trace de VBA.
Sinon pour les accents, je sais, c'est pas terrible mais pour un tout petit code comme ca, je ne voulais pas les nommer dans tout les sens (surtout que j'en ai 4 autres similaires)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 avril 2011 à 15:28
Ok.
Pour que ton nouveau document ne contienne pas les macros, il te suffit de créer un nouveau document au lieu d'utiliser le document courant.
Dim monDoc As Document
Set monDoc = New Document
et ensuite, tu t'adresses à monDoc au lieu du doc courant.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 avril 2011 à 15:31
Prends l'ahbitude de nommer tes variables ou objet avec une abréviation en tête du nom, qui rappellera tout de suite sa nature.
Les grands classiques :
Integer iMaVar
Long lMaVar
Image imgMonImage
tu peux inventer la norme qui te plait, du moment que ça représente sans ambigüité le type de var (facilite le débogage et la progammation)
julasse
Messages postés6Date d'inscriptionmercredi 25 août 2010StatutMembreDernière intervention22 avril 2011 21 avril 2011 à 16:35
ok pour les variables à l'avenir
En fait, je 'nai peut être pas été assez précis. le word ne se génère pas tout seul tout seul, il est prérédigé et remplis de signet. Je ne peux de fait pas ouvrir un nouveau word.
Ma question était par rapport à l'image, le reste marche impec' même si, comme tu le soulève, ce n'est pas très académique.
merci
cordialement
PS: il me reste plus que ça pour finaliser l'appli. J'ai passé 200 heures dessus, alors tu comprend que je ne veux plus y toucher.....
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 avril 2011 à 18:32
Pour en revenir à ton image, je ne comprends pas où / sur quoi se trouve Image1 qui pose problème. Il semble que tu le crées à la volée mais où atterrit-il ?
On ne sait pas non plus ce qu'est ta variable plangeneral sans accent (un String ?).
Si c'est le cas, je ne comprends pas trop le
Set plangénéral = ThisDocument.plangeneral
Comment une Image pourrait-être une chaine.
Fais l'essai suivant :
Prends ton fichier vierge et regarde sa taille précise en octets.
Lance ta macro et remplis ton image et regarde à nouveau la taille.
Compare la différence avant-après avec la taille de l'image.
Si le fichier a grossi d'un peu plus que le poids de l'image, c'est qu'elle est incluse dans le Doc. Sinon, c'est que le Doc n'a enregistré que le lien de l'image ou un truc comme ça.
julasse
Messages postés6Date d'inscriptionmercredi 25 août 2010StatutMembreDernière intervention22 avril 2011 22 avril 2011 à 08:27
Putin de bordel de merde.... c'est exactement ca....
le doc n'a enregistrer que le liens ... et du coup, limage n’apparaît plus lorsque j'efface les macros.....