Excel avec Tcl et Tcom

 

GS - Cette page regroupe des exemples de l'utilisation du package Tcom avec Excel.

- Récupérer le contenu de la cellule C7

- Connaître les coordonnées de la dernière cellule remplie

- Colorier des cellules et leurs contenus

- Insérer une image en cellule A2


GS (100224) Comment récupérer le contenu de la cellule C7 ?

 package require tcom

 # Chargement du fichier
 set application [::tcom::ref getobject "C:/test.xls"]
 set ws [$application Worksheets]
 set xlCellTypeLastCell 11

 # Récupération du contenu de la cellule C7
 set cells [$ws Cells]
 set C7 [[$cells Item 7 C] -get Value]

GS (100224) Comment connaître les coordonnées de la dernière cellule remplie ?

 package require tcom

 # Chargement du fichier
 set application [::tcom::ref getobject "C:/test.xls"]
 set worksheets [$application Worksheets]
 set xlCellTypeLastCell 11

 # Récupération du nombre de ligne et de colonne
 set lastCell [[$worksheets Range "A1"] SpecialCells $xlCellTypeLastCell]
 set Nline [$lastCell Row]
 set NColumn [$lastCell Column]

GS (100224) Comment colorier des cellules et leurs contenus ?

 package require tcom

 set application [::tcom::ref createobject Excel.Application]

 set workbooks [$application Workbooks]
 set workbook [$workbooks Add]
 set worksheets [$workbook Worksheets]
 set worksheet [$worksheets Item [expr 1]]
 set cells [$worksheet Cells]

 $application Visible 1

 # Remplissage des cellules A1 A2 et A3
 $cells Item 1 A Hello
 $cells Item 2 A tcl
 $cells Item 3 A 2010

 # Coloration de la cellule A1. ColorIndex varie de 0 à 56
 set C1 [$cells Item 1 A]
 set I1 [$C1 Interior]
 $I1 ColorIndex 5

 # Coloration de la fonte de la cellule A2
 set C2 [$cells Item 2 A]
 set F2 [$C2 Font]
 $F2 ColorIndex 26

 $application Quit

GS (130722) Insérer une image en cellule A2

 package require tcom

 set application [::tcom::ref createobject "Excel.Application"]
 set workbooks [$application Workbooks]
 $application Visible 1
 $application DisplayAlerts False
 set workbook [$workbooks Open "C:/temp/test.xls"]
 # Utiliser le chemin complet au moins pour le fichier image
 set imgfile "C:/temp/plume.png"
 set worksheets [$workbook Worksheets]
 # Selection du 1er onglet
 set ws1 [$worksheets Item [expr 1]]
 # Focus sur la cellule A2
 [$ws1 Range A2] Activate
 [$ws1 Pictures] Insert $imgfile

Voir aussi Instancier des objets COM avec Tcom, Excel avec Tcom, Word avec Tcl et Tcom et Word avec Tcom