begin process at 2010 02 10 12:56:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Tutoriaux

 > ATTAQUER EXCEL AVEC DELPHI

ATTAQUER EXCEL AVEC DELPHI


 Information sur la source

Note :
5,33 / 10 - par 3 personnes
5,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Tutoriaux Niveau :Initié Date de création :18/06/2005 Vu / téléchargé :14 630 / 3 605

Auteur : aymenk

Ecrire un message privé
Site perso
Commentaire sur cette source (35)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Plusieurs procedures diverses pour attaquer Excel avec Delphi.
vous y trouverez :
1-Connection a Excel
2-Ouverture d'un classeur
3-Création d'un ou plusiers feuilles
4-Chargement d'un Ttable dans une feuille
5-Dessiner un Graphe avec des données existante
et autres....
Ce projet est réalisé en suivant le FaqDelphi depuis :
www.developpez.com. contacts:
aymen_k2003@yaoo.fr ou  delphifr.com



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip GENERATEUR DE TEXTURE
Source avec Zip Source avec une capture CHANGER LA LANGUE DU CLAVIER PAR PROGRAMMATION
Source avec Zip Source avec une capture STÉGANOGRAPHIE OU COMMENT CACHÉ DU TEXTE DANS UNE IMAGE
Source avec Zip Source avec une capture GET SERIAL DRIVE
Source avec Zip SENDKEY DU VB EXEMPLE SIMPLE DE COMPREHENSION

 Sources de la même categorie

Source avec Zip Source avec une capture GESTION DE L'ACCÈS AU MDICHILD À L'AIDE D'ONGLET par CricriLeFou
MAILS AVEC INDY10 : CONTENTTYPE/CONTENTID/PARENTPART par MAURICIO
Source avec Zip Source avec une capture LES CODES DU TUTORIEL SUR LA PROTECTION DES LOGICIELS PAR FI... par Paounet
Source avec Zip Source avec une capture DESIGN PATTERN OBSERVER : IMPLÉMENTATION RÉUTILISABLE par Delphiprog
Source avec Zip Source avec une capture STEGANO - CACHER DU TEXTE DANS UNE IMAGE (TUTO) par pablor44

Commentaires et avis

Commentaire de aymenk le 18/06/2005 12:38:19

Tous commentaires est le bienvenus...
Faites moi savoir si vous faites des Modifications sur ce code

Commentaire de Delphiprog le 18/06/2005 15:39:10 administrateur CS

Ben, déjà la remarque que l'on fait régulièrement aux débutants : nommer les composants utilisés dans le code. Ca facilite grandement la lecture du code sans avoir à charger le projet dans l'EDI pour savoir à quoi correspond tel ou tel bouton.

Il aurait fallu préciser que cette application est basée sur la série de composants livrée avec certaines versions et un certain niveau de Delphi. Le composant TExcelApplication est disponible depuis Delphi5 ou 6. Tout le monde ne pourra donc pas exploiter ce code source.

Commentaire de aymenk le 19/06/2005 09:57:13

Merci Delphiprog.Mais si on vois tous les exemples y'en beaucoup qui dépasser même Delphi5 ,comme celui qui dessine un calendrier sur le Wallpapaer du bureau,si je te dis que je me vois VIEUX on utilisant D5 !!!???...
Merçi quand même ..puisque nous y somme donne moi votre avis sur l'exemple de cryptage

Commentaire de sidena le 20/06/2005 09:23:55

A la compilation, j'ai :
[Erreur] Unit1.pas(88): Identificateur non déclaré : 'emptyparam'...
Dommange, ca avait l'air intéressant !

Sidea

Commentaire de papyvore le 20/06/2005 09:37:20

pour SIDENA
(****************************************
Modif pour fonctionnement avec D7
- ajouer l'unité Variants
- change tous les Range en ExcelRange
- ajouter 2 params EmptyParam a tous les Open(fichierXLS....
    Open(fichierXLS,False,False,
      EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,
      EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,0);
      devient
    Open(fichierXLS,False,False,
      EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,
      EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,
      EmptyParam,EmptyParam,0);
a priori ça marche sur D7 avec ces modifs      
*****************************************)

Commentaire de aymenk le 20/06/2005 10:49:34

Salut  papyvore,
Merçi de ton aide, j'utilise Delphi5 donc je ne peut savoir; pourmoi ça mrche.
REM:à NIX
pouqoui ne pas ajouter une case è cocher pour préciser sur quel version le source a été développé. Merçi a tous le monde

Commentaire de sidena le 20/06/2005 10:49:57

Merci, mais ça ne marche pas encore.
Ok pour Variants, ok pour les open, mais après avoir changé Range en Excelrange ligne 308, j'ai :
[Erreur] Unit1.pas(390): '[' attendu(e) mais ':=' trouvé(e)
le ligne 390 étant :
  MaFeuille.Range['B1','E3'].Value:='Hello World Cellule Ajuster par largeur ...etc'  ;
??!!

Commentaire de papyvore le 20/06/2005 11:17:11

si si
change tous les Range en ExcelRange
y compris MaFeuille.Range['B1','E3'].Value et tos le saures range
MaFeuille.ExcelRange['B1','E3'].Value

Commentaire de papyvore le 20/06/2005 11:18:56

correctif
y compris MaFeuille.Range['B1','E3'].Value et tous les autres range

Commentaire de sidena le 20/06/2005 12:18:22

Si je fais cela, j'ai :
[Erreur] Unit1.pas(317): Identificateur non déclaré : 'Excelrange'
la ligne 317 étant devenue :
MaFeuille.Excelrange['A2','A4'].EntireRow.Delete(xlUp);
...?

Commentaire de papyvore le 20/06/2005 12:30:40

oups erreur de ma part dans l'explication
il faut bien laisser les
  MaFeuille.Range['B1','E3'].Value
Mais il faut changer toutes le variables de Type Range en            ExcelRange désolé  :(
Exemple
procedure TForm1.Button21Click(Sender: TObject);
var
  MonClasseur : _workbook;
  MaFeuille   : _worksheet;
  rMaPlage    : ExcelRange;//Range;
begin
If ExcelApplication1.Workbooks.Count>=1 Then                           //xlWBATExcel4MacroSheet : Feuille macro Excel 4
  MonClasseur:=ExcelApplication1.Workbooks[1];
  MaFeuille:=MonClasseur.Worksheets[1] as _worksheet;
  rMaPlage:=MaFeuille.UsedRange[0];
  //Attention : la plage définie par UsedRange est remise à jour par Excel
  //après des insertions ou suppression lors du prochain appel de UsedRange.
  //Par exemple l'adresse montrée ici n'est pas correcte :
MaFeuille.Range['A2','A4'].EntireRow.Delete(xlUp);
.........................
je pense ne rien avoir oublié

Commentaire de sidena le 20/06/2005 14:12:00

Ca coinçait toujours à la ligne 390 sur l'expression :
"MaFeuille.Range['B1','E3'].Value"
avec le message :
[Erreur] Unit1.pas(390): '[' attendu(e) mais ':=' trouvé(e)
Jusqu'à cette ligne tout se compilait bien...
Je lui ai donc donné un argument [=1] puisqu'il y tenait absolument, et tout s'en enfin compilé.

J'ai eu le message "Excel en mémoire" après avoir cliqué sur "Lancer Excel", mais immédiatement suivi d'un plantage en exception du debugger : " le serveur a généré une exception - oleexception... etc" suivi après 2 ou 3 essais infructueux par un plantage général de Delphi - sortie par ctrl-alt-del. Tout ca sans avoir cliqué sur le bouton 23, seul point que j'avais bricolé.

Par ailleurs, je lance Excel dans des programmes que j'ai écrit, mais de façon beaucoup plus rudimentaire (juste ouverture + charger une feuille). Donc ce ne doit pas etre mon système qui est en cause, mais il semble que ce prog n'est pas adapté à Delphi7 + XP edition familiale...

Merci quand même !

Commentaire de papyvore le 21/06/2005 09:33:45

j'ai la même config que toi et je t'assure que ça marche.
tu drevrais tout reprendre a zéro en replaçant l'unit1 télécharger
et faire les modifs
parceque la ligne 390 est
          MaFeuille.Range['B5','C12'].Select;
et non    MaFeuille.Range['B1','E3'].Value

le seul   MaFeuille.Range['B1','E3'].Value2 :='Hello World ...
est à la ligne 325.
rééssais c'est une bonne unit.
mais n'oublit pas avant compil et aprés les modifs de supprimer le .dcu fourni dans le zip qui est un D5, ou bien fait menu construire projet1.
si tu ne supprime pas le DCU c'est lui qui est prit en pemier
et génére des erreurs (ce qui m'est arrivé) :)
aprés ça marche trés bien.

Commentaire de yvessimon le 27/06/2005 16:25:04

Bonjour,

J'utilise DELPHI7 WINDOWS 2000 ET EXCEL 2002.

J'ai les mêmes PB.
DANS: procedure TForm1.Button23Click(Sender: TObject);

ligne :   MaFeuille.Range['B1','E3'].Value := 'Hello World Cellule Ajuster par largeur ...etc'  ;

Il y a : [Erreur] Unit1.pas(392): '[' attendu(e) mais ':=' trouvé(e)

Quelle version des 3 logiciels utiliser ?

As-tu des exemple des graphique ?..


Salutations

Commentaire de papyvore le 27/06/2005 19:42:33

bonjour
remplace value par value2
ligne :   MaFeuille.Range['B1','E3'].Value := 'Hello ..etc
devient   MaFeuille.Range['B1','E3'].Value2 := 'Hello ..etc

procedure TForm1.Button23Click(Sender: TObject);
var
  MonClasseur : _workbook;
  MaFeuille   : _worksheet;
begin
  ExcelApplication1.SheetsInNewWorkbook[0]:=1;
  MonClasseur:=ExcelApplication1.Workbooks.Add(EmptyParam,0);
  MaFeuille:=MonClasseur.Worksheets[1] as _worksheet;
  MaFeuille.Range['B1','E3'].Value2 :='Hello World Cellule Ajuster par largeur ...etc'  ;
  ExcelApplication1.Visible[0]:=true;
  with  MaFeuille.Range['A1','E3'] do
  begin

Commentaire de yvessimon le 28/06/2005 08:51:29

Bonjour,

Toutes mes excuses c'est dans le message du 21/06/2005.

Mais alors pour quoi " .value2 " ?

autre questions :

ou trouver toutes ces commandes ?

As-tu des exemples de graphes excel via delphi ?

Salutations

Commentaire de papyvore le 29/06/2005 09:23:20

bonjour
en D7 value est remplacé par value2 et value demande d'autre param [olevariant]

ces commandes sont dans ExcelXP.pas

Button22Click donne un ex. de graphe
tu peu aussi aller voir
http://delphi.developpez.com/faq/?page=excelgraphs#excelgraphtravail



Commentaire de ramadol le 03/11/2005 15:19:18

Bonjour les amis;
j'ai très respectueusement l'honneur de vous demander de me communiquer le programme relatif à la conversion dez chiffres en letres en Excell, avec des décimaux!
Mes remerciements

Commentaire de groben le 14/11/2005 11:54:20

Bonjour,
Je bosse avec une très vielle version de Delphi : delphi2.0 & je dois piloter Excel, Je peux le lancer faire quelques bidouilles, mais je n'ai ni Variant.pas, ni CimObj.pas, ni Excel200.pas...
1) comment savoir quelles fonctions je peux utiliser
2) est il possible de récupérer les fichiers *.pas et les DLL coorrrespondants ?
Merci de m'éclairer, bonne prog
BEN

Commentaire de FENETRES le 11/04/2006 15:13:57

Félicitations... vous avez du mérite ! Personnellement, il y a longtemps que j'en suis revenu au bon vieux composant TOleContainer. Ni le temps, ni la patience !

Commentaire de Mouniriz le 12/05/2006 10:38:33

Salut tt le monde !
Les tuto ont l'air cool mais je pe pas les utiliser. Je pe pas faire de graphes sur excel parceke il me manke les uses excel2000 ou 97.pas et *.dcu.
Je cri "a l'aide" et je vous demande si kelkun peu me les envoyer a mounirdrd@aol.com.
Merci

Commentaire de aymenk le 12/05/2006 19:49:43

Salut,Mouniriz,
les units excel2000 /97 ce trouve dans les source de delphi 5...
meme si tu as ces source et tu n'utilise pas delphi 5 ça ne va pas marcher..

Commentaire de yvessimon le 15/05/2006 08:48:04

Bonjour,

Delphi 2 avec windows 95 ? alors bon courage ! .

Passe à une version résente. Ce sera plus facile.

sur mon poste les fichiers  sont sur
C:\Program Files\Borland\Delphi7\Ocx\Servers
C:\Program Files\Borland\Delphi7\Imports
as tu fait une recherche complette sur les repertoires ?


Salutations

Commentaire de sterkasor le 24/07/2006 08:50:02

Est-ce-qu ce code peut aussi trier des doublons ?

Commentaire de drezmir le 18/12/2006 10:00:34

Bonjour (Excuse-moi pour ma francaise)

J'ai une question:
Pour visualiser les Gridlines en Excel il doive ecrire
  // Show/ Hide Gridlines:
    ExcelApp.ActiveWindow.DisplayGridlines := False; // ou True.

Ma question.
Si je ne veut pas visualier le Zero values.. je doive ecrire ?
ExcelApp.ActiveWindow.??????:=False;

Merci

Commentaire de ville007 le 22/05/2007 20:46:00

c'est bien fais
moi je cherche comment faire la sauvgarde de dbgrid comment un fichier XLS (excel).

Commentaire de guykoumba le 05/02/2008 15:44:04

Salut à tous.Le code est très interressant et ca marche chez moi.Mais j'essai d'utiliser la fonction AutoFilter pour filtrer une plage mais ja n'y arrive pas.Quelqu'un pourrait-il m'aider?

Commentaire de FeuerFrei118 le 30/06/2008 19:42:51

Bonjour! j'ai essayé votre code qui apres la compilation (en execution) fait des erreurs de violation. Pourriez-vous m'aidé?

J'utilise Excel 2007, windows vista et delphi7

Merci d'avance!

Commentaire de yvessimon le 01/07/2008 08:39:01

Bonjour,

Regarde avec windows 2000, cela fonctionne très bien

Salutations

Commentaire de FeuerFrei118 le 01/07/2008 08:57:38

Regarder avec win2000? Cet à dire?

Merci

Commentaire de yvessimon le 01/07/2008 09:03:14

Bonjour,
Soit tu installes windows 2000 sur ton pc
soit tu utilises un autre pc qui a windows 2000

Salutations

Commentaire de Migueldasilva le 09/10/2008 16:08:54 1/10

bonjour,
le code parait bien mais c'est quasiment illisible. Le code n'est pas indenté ou mal, ça ne compile pas sous D7, j'ai testé les manip pour le faire marcher sous cette version, ça compile mais sa plante Excel au lancement...
On ne peut distinguer les commentaires utiles des lignes de code mis en commentaire.

Commentaire de mbenny le 06/01/2010 14:48:41

Bonjour

J'ai essaye votre programme et ca bien marché.
Je suis entrain de devollope un programme qui utilse excel sous delphi 6 mais je ne trouve pas le help des fonctions et des objets de TExcel.Application et ca me ralenti un peu pour cela si vous pouvez m'aider de me fournir une nemenclature de tous fonctions et leurs explication
Merci

Commentaire de aymenk le 06/01/2010 19:32:30

Salut mbenny  merci du message mais depuis le temps je n(utilise presque pas Delphi...j'ai d'autre chat a fouetter ...
Si je trouve qlq chose je vous le communiquera ...
A +...

Commentaire de mbenny le 10/01/2010 10:01:37

Salut Aymenk
Merci pour Votre interet, mais juste j'ai trouver votre exemple riche en application Excel, chose qui m'a pouusser de vous demander de l'aide juste pour m'orienter ou je puisse trouver un help ou des exemple plus riche des fontion , precudure et des objet concernant les application excel (TexcelApplication), Merci et je serais tres heureux de recevoir quelque chose de votre part.
Salutations

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales