Hello, J'ai effectivement usé de l'enregistreur et puis modifié la macro pour qu'elle puisse fonctionner partout comme Francois l'a dit par la suite.
Y compris le déplacement de cellule. Si tu as un formatage récurrent à y apporter, tu peux aussi l'inclure dans ta macro --- Christophe Mathysen Creanet.be Internet Solutions - OOo Advies Phone : +32 4 381 21 51 - Mobile : +32 4 95 93 35 89 Mainplace : Tiège 28 D - 4845 - Sart-Lez-Spa Technic'Center : Hoofstraat 3 - 3793 - Fourons BE 0863 843 594 - Fortis 001-3871566-81 Labelisé eTIC#247 Le jeu 21/06/2007 à 00:31, zorglub.1er a écrit : > Bonjour, > > Merci pour cette réponse ;0) > > Il me semble qu'on peut obtenir un résultat similaire en > ouvrant Calc puis allant dans Outils->Macros-> Enregistrer une > macro. > Une fenêtre apparaît alors ; elle se nomme "Enregistrement". > On sélectionne alors plusieures cellules. > Puis on les fusionne en allant dans Format->Fusionner les > cellules->Fusionner les cellules. > Enfin, on clic sur "Terminer l'enregistrement" dans la fenêtre > nommée "Enregistrement". > Une fenêtre apparaît alors, nommée "Macros OpenOffice.org Basic". > Là on enregistre la macro enregistrée dans un module, une > macro déjà existant(e) ou dans un nouveau module, une nouvelle > bibliothèque, macro. > > ------------------------------------ > > sub Fusion > rem > ---------------------------------------------------------------------- > rem define variables > dim document as object > dim dispatcher as object > rem > ---------------------------------------------------------------------- > rem get access to the document > document = ThisComponent.CurrentController.Frame > dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") > > rem > ---------------------------------------------------------------------- > dim args1(0) as new com.sun.star.beans.PropertyValue > args1(0).Name = "ToPoint" > args1(0).Value = "$E$8" > > dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, > args1()) > > rem > ---------------------------------------------------------------------- > dim args2(0) as new com.sun.star.beans.PropertyValue > args2(0).Name = "ToPoint" > args2(0).Value = "$D$8:$F$8" > > dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, > args2()) > > rem > ---------------------------------------------------------------------- > dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", > "", 0, Array()) > > > end sub > > -------------------------------------------------- > > Est ce que tu t'es inspiré de ce modèle ou tu t'y es pris > autrement avec l'enregistreur de macro pour arriver à la macro > que tu m'as écrite ? > > D'ailleurs, il me semble qu'avec la fonction mergeRange(), on > pourrait faire la même chose. > > http://api.openoffice.org/docs/common/ref/com/sun/star/text/XTextTableCursor.html#mergeRange > > Mais je ne sais comment m'y prendre. > > Merci d'avance ;0) > > > > Hello, > > > > Et voici quelque chose qui devrait t'aider... > > > > sub Fusion > > rem > > > ---------------------------------------------------------------------- > > rem define variables > > dim document as object > > dim dispatcher as object > > rem > > > ---------------------------------------------------------------------- > > rem get access to the document > > document = ThisComponent.CurrentController.Frame > > dispatcher = > createUnoService("com.sun.star.frame.DispatchHelper") > > rem > > > ---------------------------------------------------------------------- > > dispatcher.executeDispatch(document, > ".uno:ToggleMergeCells", "", 0, > > Array()) > > > > End Sub > > > > --- > > Christophe Mathysen > > > >Le lun 18/06/2007 à 14:14, zorglub.1er a écrit : > > > > > > Bonjour, > > > > > > Comment fusionner plusieures cellules dans calc avec une > macro ? > > > > > > Il me semble qu'on peut utiliser la méthode mergeRange pour > > > fusionner des cellules de tableau dans Writer, mais je ne sais > > > pas comment l'utiliser, m'en servir dans Calc. > > > > > > Sinon, j'ai pensé à une autre solution (je ne sais pas si > > > c'est réalisable) qui est d'utilisée à travers une macro la > > > "fonction" déjà existante dans Format->Fusionner les cellules. > > > > > > Ainsi, dans la macro on "appele" la fonction "Fusionner les > > > cellules" qu'on trouve dans Format->Fusionner les cellules. > > > > > > Mais je ne sais pas comment m'y prendre. > > > > > > D'avance merci pour votre aide ;0) > > Créez votre adresse électronique [EMAIL PROTECTED] > 1 Go d'espace de stockage, anti-spam et anti-virus intégrés. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED]