Excel et DDE
Fermé
has1
-
13 févr. 2009 à 23:46
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 15 févr. 2009 à 13:58
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 15 févr. 2009 à 13:58
A voir également:
- Excel et DDE
- Si et excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Aller à la ligne excel - Guide
- Déplacer une colonne excel - Guide
3 réponses
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
14 févr. 2009 à 11:37
14 févr. 2009 à 11:37
Bonjour,
Suppose que par "Feuille" tu veux dire classeur.
Probablement que dans la première commande tu ne donne pas la commande pour ouvrir Excel.Application mais directement un classeur.
Je ne connais pas le Java et ne pourrai te donner la syntaxe mais il faut
1°) ouvrir Excel.Application en tant qu'objet
2°) Ouvrir le classeur.
Pour une piste (ce n'est pas ton language) voir cet exemple
http://64.233.183.102/translate_c?hl=fr&sl=en&u=http://www.javaworld.com/javaworld/javaqa/2001-06/04-qa-0629-excel.html&prev=/search%3Fq%3Djava%2Bexcel%2Blibrary%26hl%3Dfr%26rlz%3D1T4GZEZ_frBE248BE248&usg=ALkJrhgtMkQwPdsEBy6TYTR75h-WxG-ZKA
Suppose que par "Feuille" tu veux dire classeur.
Probablement que dans la première commande tu ne donne pas la commande pour ouvrir Excel.Application mais directement un classeur.
Je ne connais pas le Java et ne pourrai te donner la syntaxe mais il faut
1°) ouvrir Excel.Application en tant qu'objet
2°) Ouvrir le classeur.
Pour une piste (ce n'est pas ton language) voir cet exemple
http://64.233.183.102/translate_c?hl=fr&sl=en&u=http://www.javaworld.com/javaworld/javaqa/2001-06/04-qa-0629-excel.html&prev=/search%3Fq%3Djava%2Bexcel%2Blibrary%26hl%3Dfr%26rlz%3D1T4GZEZ_frBE248BE248&usg=ALkJrhgtMkQwPdsEBy6TYTR75h-WxG-ZKA
Merci mon ami je crois que je me suis mal expliquer voila un petit code simple :
//************************************************************************
DDEClient client;
Conversation sheet1 = null;
client = DDEClient.getInstance();
try {
sheet1 = client.connect("Excel", "Sheet1");
System.out.println("Connected to Excel Sheet1");
String a1 = new String(sheet1.request("R1C1"));
System.out.println("A1 value: " + a1);
System.out.println("Changing cell A1 contents to \"Hello\"");
sheet1.poke("R1C1", "Hello".getBytes());
System.out.println("Sending \"New(1)\" command");
sheet1.execute("[New(1)]");
} catch(DDEException e) {
System.out.println(e);
} finally {
// disconnect in a finally clause
try {sheet1.close();} catch (Exception e) {}
}
client.close();
//**********************************************************
c la ligne en gras qui me pose probleme cette ligne etablit la liaison entre excel et java mais le probleme c que je specifie pas a quel classeur je veux m'adresser alors le resultatc que ts les classeurs ouverts peuvent echanger les données avec le serveur Java alors j'ai decidé de fermer ts les calsseurs ouverts sauf celui qui m'intersse mais j'ai trouvé l'asctuce pr le faire .
j'esper que mon probleme est claire amigo.
Merci a vous
//************************************************************************
DDEClient client;
Conversation sheet1 = null;
client = DDEClient.getInstance();
try {
sheet1 = client.connect("Excel", "Sheet1");
System.out.println("Connected to Excel Sheet1");
String a1 = new String(sheet1.request("R1C1"));
System.out.println("A1 value: " + a1);
System.out.println("Changing cell A1 contents to \"Hello\"");
sheet1.poke("R1C1", "Hello".getBytes());
System.out.println("Sending \"New(1)\" command");
sheet1.execute("[New(1)]");
} catch(DDEException e) {
System.out.println(e);
} finally {
// disconnect in a finally clause
try {sheet1.close();} catch (Exception e) {}
}
client.close();
//**********************************************************
c la ligne en gras qui me pose probleme cette ligne etablit la liaison entre excel et java mais le probleme c que je specifie pas a quel classeur je veux m'adresser alors le resultatc que ts les classeurs ouverts peuvent echanger les données avec le serveur Java alors j'ai decidé de fermer ts les calsseurs ouverts sauf celui qui m'intersse mais j'ai trouvé l'asctuce pr le faire .
j'esper que mon probleme est claire amigo.
Merci a vous
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
15 févr. 2009 à 13:58
15 févr. 2009 à 13:58
Je pense que c'est bien comme je dis dans mon poste précédant...
Tu déclare client = DDEClient.getInstance();
Mais tu ne l'instancie pas , tu veux directement la feuille, je verrais plutôt ça...
Conversation sheet1 = null;
Déclarer une variable !! (je ne connaît pas la syntaxe)
Book as Workbooks
Conversation sheet1 = null;
book= client.connect("Excel", "NomDuClasseur");
sheet1 = book.sheets("Sheet1")
Et pour ouvrir Excel tu doit avoir une référence à cet objet (une librairy, dll ?)
Tu déclare client = DDEClient.getInstance();
Mais tu ne l'instancie pas , tu veux directement la feuille, je verrais plutôt ça...
Conversation sheet1 = null;
Déclarer une variable !! (je ne connaît pas la syntaxe)
Book as Workbooks
Conversation sheet1 = null;
book= client.connect("Excel", "NomDuClasseur");
sheet1 = book.sheets("Sheet1")
Et pour ouvrir Excel tu doit avoir une référence à cet objet (une librairy, dll ?)