Accueil > Forum > > > > Exécution programme hors Environnement
Exécution programme hors Environnement
lundi 15 juin 2009 à 17:46:34 |
Exécution programme hors Environnement

couf
|
Bonjour Les amis  j'ai le programme suivant program excel;
{$APPTYPE CONSOLE}
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,comobj, ExtDlgs, StdCtrls,strutils,shellapi,inifiles,comini;
var chimg,chrep,nblig, celprod, Vinttostr,Nonmcel :string; vcellimage,vfont,vCell,vcellfusion,vWorksheet,vXLWorkbook, vMSExcel,vXLWorkbooks,vMS1Excel : variant; avalue, arange,aSheetName ,vFileName : AnsiString; r, i,rom: integer; d : real; FileIni : TIniFile;
begin try fileIni:= Tinifile.Create('C:\infoc\Xcel.ini'); chrep:=fileini.ReadString('chemin','repoting','') ; chimg:=fileini.ReadString('chemin','image',''); finally
end; { TODO -oUser -cConsole Main : Insert code here } rom:=67; vMSExcel := CreateOleObject('Excel.Application'); vMSExcel.Visible := true; vFileName := chrep; vXLWorkbooks := vMSExcel.Workbooks; vXLWorkbook := vXLWorkbooks.Open(vFileName); aSheetName := ' Reporti'; vWorksheet := vXLWorkbook.WorkSheets[aSheetName]; //insertion de 4 lignes
//nombre de ligne utilisées i:= vworksheet.usedrange.rows.count ; nblig:=inttostr(i); // écriture 2 ligne en Bas Vinttostr:= inttostr(i+2); for r := 0 to 5 do begin // rom c'est la valeur numérique du caractère ascii rom:=rom+1; celprod := char(rom) + nblig; aRange := char(rom)+Vinttostr; vCell := vWorksheet.Range[aRange]; //mise en forme résultat vcell.font.bold:=true; //Taille police vcell.font.size:='13'; //interieur cellule en gris { # 'Aqua => 8, 28, 33, 34, 42 # 'Black =)> 1, 51, 52 # 'Blue =)> 5, 32, 41, 49 # 'Fuchsia =)> 7, 26 # 'Gray =)> 16, 46, 47, 48, 56 # 'Green =)> 10, 43 # 'Lime =)> 4 # 'Maroon =)> 9, 30, 53 # 'Navy =)> 11, 25, 55 # 'Olive =)> 12, 44, 45 # 'Purple =)> 13, 18, 21, 29, 54 # 'Red =)> 3 # 'Silver =)> 15, 17, 20, 22, 24, 35, 36, 37, 38, 39 # 'Teal =)> 14, 23, 31, 50 # 'White =)> 2, 19, 40 # 'Yellow =)> 6, 27 } vcell.interior.colorIndex:=16; // vcell.formula:='=sum(A1:A3)'; //somme aValue := '=sum('+ char(rom)+'2:'+ celprod +')'; vCell.Value := aValue;
end ; // fusion des 3 premières cellules vcellfusion:=vworksheet.Range[char(65)+Vinttostr,char(67)+Vinttostr] ; vcellfusion.merge(FALSE); //Mise en gras et taille police vcellfusion.font.bold:=true; vcellfusion.font.size:='12'; vcellfusion.value:='TOTAL' ; vcellfusion.interior.colorIndex:=3; //alignement des valeurs {xlRight = -4152 xlLeft = -4131 xlCenter = -4108 xlJustify = -4130} vcellfusion.HorizontalAlignment:= -4108; {arange:='E29'; vCell := vWorksheet.Range[aRange]; vcell.value:=i; } //Insertion lignes vcell:=vworksheet.Cells.Item[1,1] ;
vcell.EntireRow.Insert; vcell.EntireRow.Insert; vcell.EntireRow.Insert; vcell.EntireRow.Insert;
// Insertion d'une image en haut
vcellimage:=vworksheet.range['A1']; vWorksheet.Pictures.Insert(chimg).Select; vMSExcel.Selection.Top:=1; vMsExcel.selection.left:=1; // Mise en forme largeur (width) hauteur (height) vmsexcel.selection.width:= 96; vmsexcel.selection.height := 40 ; // fusion des 3 premières lignes vcellfusion:=vworksheet.Range['A1','I4'] ; vcellfusion.merge(FALSE);
//saugarde du travail et on quitte l'instance vXLWorkbook.Save; vMSExcel.Quit; vMSExcel := unassigned;
{'CoInitialize has not been called'} end.Le Problème me direz vous ?  Il s'execute parfaitement sur mon PC (windows XP) j'ai l'image ou je veux etc etc..... Lorsque je l'exécute sur le PC cible (windows 2000 mais même version du pack office) avec des droits administrateur , en ayant pris soin de bien copier comini dans le même répertoire d'exécution bin ......... il ouvre juste mon fichier excel , et puis rien ne se passe. Auriez vous une idée s'il vous plait de ce que j'aurais pu oublier? Merci d'avance couf
|
|
lundi 15 juin 2009 à 22:23:58 |
Re : Exécution programme hors Environnement

cantador
|
bonsoir, idée : si comini est une unité, il faut l'ajouter au projet et non copier le .pas..
cantador
|
|
mardi 16 juin 2009 à 11:31:42 |
Re : Exécution programme hors Environnement

couf
|
Merci Cantador j'avais bien mis l'unité en désespérance de cause hier soir  j'ai recompilé avec Delphi 7 qui ma de suite mis en avant une erreur Eole (que je n'ai pas avec la version 2005) méthode font.bold non comprise je pense que cela doit venir de là, je vais plutôt chercher dans ce sens. couf
|
|
mardi 16 juin 2009 à 14:24:19 |
Re : Exécution programme hors Environnement

couf
|
Re, Effectivement J'ai commenté ces 2 lignes vcell.font.bold:=true;vcellfusion.font.bold:=true;Et là mon programme s'excécute mais ma dernière ligne n'est plus en gras quelqu'un aurait une idée à me soumettre s'il vous plait?  par quoi pourrais je remplacer font.bold?
|
|
mardi 16 juin 2009 à 22:03:51 |
Re : Exécution programme hors Environnement

Bacterius
|
Si ce sont des objets TFont Windows, alors c'est Font.Style := Font.Style + [bsBold];
Si il s'agit d'un objet fonte COM, alors je ne sais pas ...
Cordialement, Bacterius !
|
|
mardi 16 juin 2009 à 22:42:22 |
Re : Exécution programme hors Environnement
|
mardi 16 juin 2009 à 22:54:45 |
Re : Exécution programme hors Environnement

Bacterius
|
Ce n'est pas un tableau, un ensemble (set of TFontStyle) non ?
Cordialement, Bacterius !
|
|
mercredi 17 juin 2009 à 10:00:48 |
Re : Exécution programme hors Environnement

cantador
|
pour moi, c'est la même chose.. mais ça ne marche pas ici, car si l'écriture vcellfusion.font.bold:=true; était fausse, le compilo ne la prendrait pas or d'après couf, ça compile.. ici, on est en en système OLE (vMSExcel := CreateOleObject('Excel.Application');) c'est-à-dire on pilote EXCEL avec delphi
donc il faut trouver autre chose..
cantador
|
|
mercredi 17 juin 2009 à 18:17:35 |
Re : Exécution programme hors Environnement

couf
|
Bonjour  J'ai donc essayé vcellfusion.font.fontstyle :='bold';cela ne plante pas fonctionne bien sur mon PC mais arrivé sur le serveur cette fois mon programme se déroule normalement sauf que les cellules ne se mettent pas en gras Autre chose je ne sais pas si cela vien de ma version d'excel pour mettre en gras une cellule sans passer par mon programme j'ai du passer par cette manip http://support.microsoft.com/kb/966565/fr maintenant une question supplémentaire  le fait d'écrire vcellfusion.font.underline:= 'xlUnderlineStyleSingle'; ne compile pas me renvoie un message d'erreur Méthode 'selection' not supported by automation.
couf
|
|
mercredi 17 juin 2009 à 19:12:56 |
Re : Exécution programme hors Environnement

cantador
|
vcellfusion.font.fontstyle :='bold'; non, çà j'y crois pas, tu ne peux pas mettre du texte... essaie ce code : vcellfusion:=vworksheet.Range[char(65)+Vinttostr,char(67)+Vinttostr].select;
cantador
|
|
Cette discussion est classée dans : rom, vcell, vmsexcel, vcellfusion, vworksheet
Répondre à ce message
Sujets en rapport avec ce message
comment "locker" le tiroir d'un cd-rom en delphi sous XP [ par hendrix ]
Bonjour à tous,Je cherche du code en delphi pour empêcher l'ouverture d'un lecteur de CD-rom sous windows XP.Je cherche également du code en delphi p
Detection mac/pc [ par noya ]
Bonjour,je suis en train de developper un cd-rom en flash, et je me demandais s'il etait possible par une quelconque appli (ici delphi) de savoir s'il
plage de cellules sélectionnée dans EXCEL [ par flor003 ]
salut tout le monde ! Bon j'ai un petit soucis. Je chercher à récupérer une plage de cellules sous Excel que j'ai sélectionné préalablement avec la s
pb de sauvegarde sous excel [ par othland ]
salut tout le monde!je pilote excel à partir d'une application, j'ouvre mon fichier excel et je le ferme comme suit :////////////////var vMSExcel,
Comment graver les CD/DVD ROM avec Delphi [ par yokochimada ]
Salut tout le mondeJe souhaite mettre au point une application de gravure des CD/DVD avec Delphi, mais je ne sais pas comment m'y prendre..ma question
VTOC virtuelle [ par KIMI1632 ]
Kimi1632salut, je voudrait simuler la présence d' CD/DVD dans mon lecteur qui bloque s'il est vide, voilà a quoi je pense 1- faire une routine qui éc
control l'accer au disquette ou CD-Rom [ par street8178 ]
j'ai un petite question: comment controler l'accer au disquette ou CD-Rom merci
Pilotage de Excel [ par jnmchl ]
Bonjour,J'ai un petit problème avec mon application qui génère des fichier Excel.En fait tout fonctionne parfaitement, par contre mon appli génèrait e
Tableau croisé dynamique [ par couf ]
Bonjour à Tous Je viens encore solliciter votre aide, et remercie quiconque voudra bien se pencher sur mon code Je tiens à dire que la recherche fran
Livres en rapport
|
Derniers Blogs
PARUTION DE MON LIVRE SUR WPF 4PARUTION DE MON LIVRE SUR WPF 4 par odewit
La 2e édition de mon livre sur WPF sort aujourd'hui en version numérique et lundi en version papier :-)
L'ouvrage présente de façon approfondie les fonctionnalités de WPF 4 : graphisme 2D et 3D, animation, multimédia, interfaces utilisateur, databind...
Cliquez pour lire la suite de l'article par odewit EDM : COMMENT UTILISER L'HORIZONTAL ENTITY SPLITTINGEDM : COMMENT UTILISER L'HORIZONTAL ENTITY SPLITTING par Matthieu MEZIL
Une des raisons pour lesquelles j'adore l'Entity Framework est la puissance de son mapping. Beaucoup de développeurs pour ne pas dire la plus part n'en n'ont pas conscience. Pour rappel, j'ai réalisé des videos (en anglais) sur le mapping . Certains scena...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WP7DEV][REACTIVE] RENDRE LES REACTIVE EXTENSIONS PLUS STABLES[WP7DEV][REACTIVE] RENDRE LES REACTIVE EXTENSIONS PLUS STABLES par jay
Lorsque l'on développe des applications .NET, les exceptions non gérées dans des threads ont le désagréable effet de terminer le processus courant.
Dans l'exemple suivant.......(read more) ...
Cliquez pour lire la suite de l'article par jay WINDBG / SOS / PSSCOR2 : FAILED TO LOAD DATA ACCESS DLL (MSCORDACWKS)WINDBG / SOS / PSSCOR2 : FAILED TO LOAD DATA ACCESS DLL (MSCORDACWKS) par coq
Ceux d'entre nous qui analysent des dumps d'applications .NET (notamment ceux créés via WER après un crash) en dehors de l'environnement initial ont probablement tous été confrontés au moins une fois au message suivant, à la saisie d'une commande SOS ...
Cliquez pour lire la suite de l'article par coq
Forum
RE : BDD ACCESSRE : BDD ACCESS par MohInfo
Cliquez pour lire la suite par MohInfo
Logiciels
Microsoft Office (2010)MICROSOFT OFFICE (2010)Microsoft Office 2010 offre de nouveaux moyens flexibles et puissants pour optimiser votre travai... Cliquez pour télécharger Microsoft Office SeaMonkey (2.0.7)SEAMONKEY (2.0.7)Le projet SeaMonkey est issu d'un effort communautaire pour developper une application tout en un... Cliquez pour télécharger SeaMonkey Safari (5.0.2)SAFARI (5.0.2)Le navigateur d'Apple a lui aussi été mis à jour, aussi bien dans sa mouture Windows que celle po... Cliquez pour télécharger Safari Mozilla FireFox (4.0 béta 5)MOZILLA FIREFOX (4.0 BéTA 5)Firefox 4.0 béta 5
L'une des nouveautés visibles les plus attendues réside sans doute dans l'a... Cliquez pour télécharger Mozilla FireFox Mozilla Firefox (3.6.9)MOZILLA FIREFOX (3.6.9)Firefox 3.6.9 corrige les problèmes suivants :
* Introduced support for the X-FRAME-OPTION... Cliquez pour télécharger Mozilla Firefox
|