FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
2.07 du 16 Mars 2013: extension des possibilités pour Excel Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -20%
Drone Dji DJI Mini 4K (EU)
Voir le deal
239 €

 

 2.07 du 16 Mars 2013: extension des possibilités pour Excel

Aller en bas 
2 participants
AuteurMessage
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty
MessageSujet: 2.07 du 16 Mars 2013: extension des possibilités pour Excel   2.07 du 16 Mars 2013: extension des possibilités pour Excel EmptySam 16 Mar 2013 - 11:16

Nouvelle version:
KGF.dll V2.07 du 16 Mars 2013

Nouveautés:
1. les fonctions OpenExcelWorkBook et NewExcelWorkBook ont un paramètre mode% supplémentaire, qui peut accepter les valeurs suivantes:
0 = ouverture dans une nouvelle instance de Excel, en gardant d'éventuelles instances existantes
1 = ouverture dans une nouvelle instance de Excel, en fermant toutes les instances éventuellement actives

2. la fonction OpenExcelWorkBook peut maintenant gérer d'autres formats, comme CSV, par exemple. Si un fichier CSV est ouvert, la fonction SaveExcelWorkBook maintiendra le format CSV. La fonction SaveExcelWorkBookAs gardera le format CSV si le nom du fichier sortant est de type CSV. Sinon, un fichier de type XLS sera créé.

Modules modifiés:
KGF.dll
KGF_SUB.bas
KGF.chm, KGF.doc, KGF.pdf


La doc est à jour.

On a ainsi un moyen très simple de créer un fichier XLS à partir de Panoramic. Il suffit en effet de créer un simple fichier texte en format CSV (avec ";" comme séparateur), de charger ce fichier dans Excel et de sauvegarder en XLS.

Et voici le programme de démo, adapté à ces modifications:
Code:
' piloter_Excel.bas

label start, termin8
label open, new, close
label saveas, save
label rd
label content, formula
label sel, copy, paste
label textstyle
label cellstyle
label selectsheet, newsheet, renamesheet, removesheet
label status

dim wb$ : wb$ = "C:\temp\test.xls"
dim res%, range$, txt$, frm$, police$, siz%, B%, I%, S%, col%, ind%
dim k%, icol%, lcol%, typ%, poids%, sheet$, sheet1$, resultat$(1)
dim awb$, ash$, arg$, nr%, nc%, f$
resultat$(0) = "Ok" : resultat$(1) = "Erreur"

width 0,1000 : height 0,800

button 1 : top 1,10 : left 1,10 : width 1,150
  on_click 1,start : caption 1,"StartExcel"
button 2 : top 2,10 : left 2,240 : width 2,150
  on_click 2,termin8 : caption 2,"TerminateExcel"
alpha 3 : top 3,10 : left 3,710 : caption 3,"Status:"
alpha 4 : top 4,10 : left 4,760 : caption 4,"Prêt"
  font_bold 4 : font_color 4,255,0,0
button 5 : top 5,10 : left 5,410 : width 5,150
  on_click 5,status : caption 5,"GetActualExcelStatus"
open_dialog 6

button 11 : top 11,40 : left 11,10 : width 11,150
  on_click 11,open : caption 11,"OpenExcelWorkBook"
button 12 : top 12,40 : left 12,240 : width 12,150
  on_click 12,new : caption 12,"NewExcelWorkBook"
button 13 : top 13,40 : left 13,410 : width 13,150
  on_click 13,close : caption 13,"CloseExcelWorkBook"

button 21 : top 21,70 : left 21,10 : width 21,150
  on_click 21,saveas : caption 21,"SaveExcelWorkBookAs"
button 22 : top 22,70 : left 22,240 : width 22,150
  on_click 22,save : caption 22,"SaveExcelWorkBook"

alpha 1001 : top 1001,100 : left 1001,10 : caption 1001,"Cellule:"
edit 1002 : top 1002,100 : left 1002,80 : width 1002,60 : text 1002,"A1"
button 31 : top 31,100 : left 31,240 : width 31,150
  on_click 31,rd : caption 31,"ReadExcelCell"
alpha 1003 : top 1003,100 : left 1003,410 : caption 1003,"Contenu:"
edit 1004 : top 1004,100 : left 1004,480 : width 1004,300
alpha 1005 : top 1005,130 : left 1005,410 : caption 1005,"Formule:"
edit 1006 : top 1006,130 : left 1006,480 : width 1006,300

alpha 1011 : top 1011,160 : left 1011,10 : caption 1011,"Cellule:"
edit 1012 : top 1012,160 : left 1012,80 : width 1012,60 : text 1012,"A1"
button 32 : top 32,160 : left 32,240 : width 32,150
  on_click 32,content : caption 32,"WriteExcelCellContent"
button 33 : top 33,190 : left 33,240 : width 33,150
  on_click 33,formula : caption 33,"WriteExcelCellFormula"
alpha 1013 : top 1013,160 : left 1013,410 : caption 1013,"Contenu:"
edit 1014 : top 1014,160 : left 1014,480 : width 1014,300
alpha 1015 : top 1015,190 : left 1015,410 : caption 1015,"Formule:"
edit 1016 : top 1016,190 : left 1016,480 : width 1016,300

alpha 1021 : top 1021,220 : left 1021,10 : caption 1021,"Fourchette:"
edit 1022 : top 1022,220 : left 1022,80 : width 1022,60 : text 1022,"A1:A4"
button 34 : top 34,220 : left 34,240 : width 34,150
  on_click 34,sel : caption 34,"SelectExcelRange"
button 35 : top 35,220 : left 35,410 : width 35,150
  on_click 35,copy : caption 35,"CopyExcelSelection"

alpha 1031 : top 1031,250 : left 1031,10 : caption 1031,"Fourchette:"
edit 1032 : top 1032,250 : left 1032,80 : width 1032,60 : text 1032,"C5:C8"
button 36 : top 36,250 : left 36,240 : width 36,150
  on_click 36,paste : caption 36,"PasteExcelSelection"
 
alpha 1041 : top 1041,280 : left 1041,10 : caption 1041,"Text Attributs:"
combo 1042 : top 1042,280 : left 1042,80 : font_names_load 1042
combo 1043 : top 1043,280 : left 1043,240 : width 1043,40
check 1044 : top 1044,280 : left 1044,300 : caption 1044,"Gras"
check 1045 : top 1045,280 : left 1045,360 : caption 1045,"Italique"
check 1046 : top 1046,280 : left 1046,420 : caption 1046,"Sous-ligné" : width 1046,70
alpha 1047 : top 1047,280 : left 1047,510 : caption 1047,"R:"
combo 1048 : top 1048,280 : left 1048,530 : width 1048,50
alpha 1049 : top 1049,280 : left 1049,600 : caption 1049,"G:"
combo 1050 : top 1050,280 : left 1050,620 : width 1050,50
alpha 1051 : top 1051,280 : left 1051,690 : caption 1051,"B:"
combo 1052 : top 1052,280 : left 1052,710 : width 1052,50
button 37 : top 37,280 : left 37,810 : width 37,150
  on_click 37,textstyle : caption 37,"SetExcelSelectionTextStyle"

alpha 1061 : top 1061,310 : left 1061,10 : caption 1061,"Cell Attributs:"
alpha 1075 : top 1075,310 : left 1075,100 : caption 1075,"Bordure:"
alpha 1076 : top 1076,310 : left 1076,160 : caption 1076,"  Localisation:"
combo 1077 : top 1077,310 : left 1077,240 : width 1077,50

alpha 1078 : top 1078,310 : left 1078,310 : caption 1078,"Type:"
combo 1074 : top 1074,310 : left 1074,340 : width 1074,50

alpha 1081 : top 1081,310 : left 1081,410 : caption 1081,"Poids:"
combo 1082 : top 1082,310 : left 1082,440 : width 1082,50

alpha 1062 : top 1062,310 : left 1062,510 : caption 1062,"R:"
combo 1063 : top 1063,310 : left 1063,530 : width 1063,50
alpha 1064 : top 1064,310 : left 1064,600 : caption 1064,"G:"
combo 1065 : top 1065,310 : left 1065,620 : width 1065,50
alpha 1066 : top 1066,310 : left 1066,690 : caption 1066,"B:"
combo 1067 : top 1067,310 : left 1067,710 : width 1067,50

alpha 1080 : top 1080,340 : left 1080,100 : caption 1080,"Fond:"
alpha 1068 : top 1068,340 : left 1068,510 : caption 1068,"R:"
combo 1069 : top 1069,340 : left 1069,530 : width 1069,50
alpha 1070 : top 1070,340 : left 1070,600 : caption 1070,"G:"
combo 1071 : top 1071,340 : left 1071,620 : width 1071,50
alpha 1072 : top 1072,340 : left 1072,690 : caption 1072,"B:"
combo 1073 : top 1073,340 : left 1073,710 : width 1073,50
button 38 : top 38,310 : left 38,810 : width 38,150
 on_click 38,cellstyle : caption 38,"SetExcelSelectionCellStyle"

alpha 1091 : top 1091,370 : left 1091,10 : caption 1091,"Feuille:"
edit 1092 : top 1092,370 : left 1092,80 : width 1092,120 : text 1092,"Feuil2"
button 39 : top 39,370 : left 39,240 : width 39,150
  on_click 39,selectsheet : caption 39,"SelectExcelWorkBookSheet"
button 42 : top 42,370 : left 42,410 : width 42,150
  on_click 42,newsheet : caption 42,"NewExcelWorkBookSheet"
button 41 : top 41,370 : left 41,580 : width 41,150
  on_click 41,removesheet : caption 41,"RemoveExcelWorkBookSheet"
edit 1094 : top 1094,400 : left 1094,80 : width 1094,120
button 40 : top 40,400 : left 40,240 : width 40,150
  on_click 40,renamesheet : caption 40,"RenameExcelWorkBookSheet"



text 1042,"Arial"
item_add 1043,"8"
item_add 1043,"10"
item_add 1043,"12"
item_add 1043,"14"
item_add 1043,"16"
item_add 1043,"18"
item_add 1043,"20"
item_add 1043,"22"
item_add 1043,"24"
text 1043,"10"
for k%=0 to 255
  item_add 1048,str$(k%)
  item_add 1050,str$(k%)
  item_add 1052,str$(k%)
next k%
text 1048,"0"
text 1050,"0"
text 1052,"0"
for k%=1 to 12
  item_add 1077,str$(k%)
next k%
text 1077,"1"
for k%=0 to 255
  item_add 1063,str$(k%)
  item_add 1065,str$(k%)
  item_add 1067,str$(k%)
  item_add 1069,str$(k%)
  item_add 1071,str$(k%)
  item_add 1073,str$(k%)
next k%
text 1063,"0"
text 1065,"0"
text 1067,"0"
text 1069,"0"
text 1071,"0"
text 1073,"0"
for k%=0 to 5
  item_add 1074,str$(k%)
next k%
text 1074,"1"
for k%=0 to 4
  item_add 1082,str$(k%)
next k%
text 1082,"1"

KGF_initialize("KGF.dll")

IsExcelRunning()
if ExcelError%=1
  message "Excel est en route"
  ConnectToExcel()
  if ExcelError%=1
    message "Connexion échouée"
  else
    message "connexion réussie"
    GetActualExcelStatus()
    caption 0,ActualExcelWorkBook$+" "+ActualExcelSheet$+" "+ActualExcelSelection$+" "+str$(ActualExcelSelectionLines%)+" lignes "+str$(ActualExcelSelectionColumns%)+" colonnes"
    message ActualExcelWorkBook$+"!"+ActualExcelSheet$+"!"+ActualExcelSelection$
  end_if
else
  message "Excel n'est pas en route"
 
end_if

end

start:
  StartExcel(1)
  LogStatus()
  return

termin8:
  TerminateExcel()
  LogStatus()
  return

open:
  f$ = file_name$(6)
  if f$="_" then return
  wb$ = f$
  OpenExcelWorkBook(wb$,1)
  LogStatus()
  return

new:
  NewExcelWorkBook(1)
  LogStatus()
  return

close:
  CloseExcelWorkBook()
  LogStatus()
  return

saveas:
  if right$(wb$,4)<>".xls" then wb$ = left$(wb$,len(wb$)-4) + ".xls"
  SaveExcelWorkBookAs(wb$)
  LogStatus()
  return

save:
  SaveExcelWorkBook()
  LogStatus()
  return

rd:
  range$ = trim$(text$(1002))
  ReadExcelCell(range$)
  text 1004,ReadExcelCellContent$
  text 1006,ReadExcelCellformula$
  LogStatus()
  return

content:
  range$ = trim$(text$(1012))
  txt$ = trim$(text$(1014))
  WriteExcelCellContent(range$,txt$)
  LogStatus()
  return

formula:
  range$ = trim$(text$(1012))
  frm$ = trim$(text$(1016))
  WriteExcelCellFormula(range$,frm$)
  LogStatus()
  return

sel:
  range$ = trim$(text$(1022))
  SelectExcelRange(range$)
  LogStatus()
  return

copy:
  CopyExcelSelection()
  LogStatus()
  return
 
paste:
  range$ = trim$(text$(1032))
  PasteExcelSelection(range$)
  LogStatus()
  return
 
textstyle:
  police$ = text$(1042)
  siz% = val(text$(1043))
  B% = checked(1044)
  I% = checked(1045)
  S% = checked(1046)
  col% = (val(text$(1052))*256 + val(text$(1050)))*256 + val(text$(1048))
  SetExcelSelectionTextStyle(police$,siz%,B%,I%,S%,col%)
  LogStatus()
  return

cellstyle:
  lcol% = (val(text$(1067))*256 + val(text$(1065)))*256 + val(text$(1063))
  icol% = (val(text$(1073))*256 + val(text$(1071)))*256 + val(text$(1069))
  ind% = val(text$(1077))
  typ% = val(text$(1074))
  poids% = val(text$(1082))
  SetExcelSelectionCellStyle(ind%,typ%,poids%,lcol%,icol%)
  LogStatus()
  return
 
selectsheet:
  sheet$ = text$(1092)
  SelectExcelWorkBookSheet(sheet$)
  LogStatus()
  return

newsheet:
  sheet$ = text$(1092)
  NewExcelWorkBookSheet(sheet$)
  LogStatus()
  return

renamesheet:
  sheet$ = text$(1092)
  sheet1$ = text$(1094)
  RenameExcelWorkBookSheet(sheet$,sheet1$)
  LogStatus()
  return

removesheet:
  sheet$ = text$(1092)
  RemoveExcelWorkBookSheet(sheet$)
  LogStatus()
  return

status:
  GetActualExcelStatus()
  caption 0,ActualExcelWorkBook$+" "+ActualExcelSheet$+" "+ActualExcelSelection$+" "+str$(ActualExcelSelectionLines%)+" lignes "+str$(ActualExcelSelectionColumns%)+" colonnes"
  LogStatus()
  return
 
sub LogStatus()
  caption 4,resultat$(ExcelError%)
end_sub


#INCLUDE "KGF_SUB.bas"
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty
MessageSujet: Re: 2.07 du 16 Mars 2013: extension des possibilités pour Excel   2.07 du 16 Mars 2013: extension des possibilités pour Excel EmptySam 16 Mar 2013 - 11:57

Bravo Klaus, si je peux demander une petite modif, pourrait-on avoir une chaine parametrable comme séparateur ?
On utilise parfois ; dans les textes et parfois il est utile de le changer. Un autre truc pour cela utilisé par Excel est de regarder si le caractère immédiatement après est un " alors il prend l'ensemble du texte suivant (même s'il y a des ; ou des ") jusqu'à ce qu'il rencontre la séquence "; qu'il exécute alors comme séparateur de champ.
Je le sais car je m'en suis servit il y a peu pour créer des fichier d'import de masse ...
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty
MessageSujet: Re: 2.07 du 16 Mars 2013: extension des possibilités pour Excel   2.07 du 16 Mars 2013: extension des possibilités pour Excel EmptySam 16 Mar 2013 - 12:17

Je vais regarder cela.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty
MessageSujet: Re: 2.07 du 16 Mars 2013: extension des possibilités pour Excel   2.07 du 16 Mars 2013: extension des possibilités pour Excel EmptySam 16 Mar 2013 - 12:38

Merci Klaus. Pour tester si tu le fais, le plus simple est de générer un fichier csv en ayant des ; dans des cellules. Tu verras il ajoute les " tout seul dans le fichier CSV
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty
MessageSujet: Re: 2.07 du 16 Mars 2013: extension des possibilités pour Excel   2.07 du 16 Mars 2013: extension des possibilités pour Excel EmptySam 16 Mar 2013 - 13:08

La solution la plus simple pour le choix du séparateur d'un fichier CSV, c'est d'insérer une première ligne dans le fichier CSV, du type:
Citation :
sep=,
Après le = , tu places le caractère servant de séparateur. Et ça marchera directement, sans modification du code.

Je vais ajouter cette info dans la doc.

EDIT

C'est fait. La doc contient maintenant une information précise à ce sujet, dans la page concernant la fonction OenExcelWorkBook.

Modules modifiés:
KGF.chm, KGF.doc, KGF.pdf
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty
MessageSujet: Re: 2.07 du 16 Mars 2013: extension des possibilités pour Excel   2.07 du 16 Mars 2013: extension des possibilités pour Excel Empty

Revenir en haut Aller en bas
 
2.07 du 16 Mars 2013: extension des possibilités pour Excel
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» 2.05 du 14 Mars 2013: gestion de Excel !
» 2.06 du 15 Mars 2013: 3 nouvelles fonctions Excel
» 1.91 du 24 Février 2013: extension de PrinterFunction
» 1.92.du 25 Février 2013 - extension de PrinterFunction
» Autres possibilités pour GRID

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: