Lorsque l'on fait un "set value" sur une cellule Excel par le biais d'un Applescript, et même si on a bien pris soin de définir le "number format", la valeur n'est pas évaluée mais stockée en tant que texte.

Cette petite épine m'a agacée un certain temps, jusqu'à ce que je trouve une solution : multiplier chaque valeur par 1.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
on storeAsNumber(colonne, ligneDeb, ligneFin)
	tell application "Microsoft Excel"
		insert into range range "A:A" shift shift to right
		set ones to range ("A" & ligneDeb & ":" & "A" & ligneFin)
		set zone to get offset range (colonne & ligneDeb & ":" & colonne & ligneFin) column offset 1
		set value of ones to 1
		copy range ones
		paste special zone operation paste special operation multiply
		delete range range "A:A" shift shift to left
	end tell
end storeAsNumber
 
storeAsNumber("C", 1, 22)
Enjoy !