Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.
Modérateur :Vilains modOOs
Règles du forum Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Dim oDoc as Object, oRange as Object, aCopier as Object
oDoc = thisComponent
oRange = oDoc.TextTables.getByName("Tableau1").getCellByPosition(1,0) ' la zone à copier
oDoc.CurrentController.select(oRange) 'Sélection de la zone
aCopier = oDoc.CurrentController.getTransferable() 'Copie
oRange = oDoc.TextTables.getByName("Tableau1").getCellByPosition(0,0) 'Première cellule pour recopie de la zone
oDoc.CurrentController.select(oRange) 'Selection de la cellule
oDoc.CurrentController.insertTransferable(aCopier) 'Transfert des données
le controle à copié est placé dans un tableau dans la colonne 2 ligne 1 je voudrais le copier sans utiliser son nom (voir post: https://forum.openoffice.org/fr/forum/v ... =8&t=50730 ) mais par sa position.
Pourquoi je ne copie rien.
Merci.
PS: aucune des macro ne me donne ce que je veux(copier les boutons radios de la case 2,1 dans la case 1,1 en utilisant leur position dans le tableau et non pas avec leur nom)
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par vito971 le 12 avr. 2016 19:47, modifié 2 fois.
Dupliquer des contrôles me semble hasardeux.
Il est plus simple de les créer à la volée (voir le suprême sur le sujet).
Autre solution : créer tous les contrôles depuis l'IHM et les masquer.
Bonjour
Merci pour cette réponse,mais elle ne convient pas car je dois utiliser des caractères de types images ou généré avec DMATHS par exemple il s’agit en fait de dupliquer par macro le contrôle choisi au hasard dans le tableau de la partie prof pour le mettre dans la partie élève.
Voici le fichier "définitif"
quelqu'un a-t-il une idée?
La macro que j'ai cité provient d'une macro de classeur qui fonctionne très bien pour les objets différents du type texte(images ou bouton...) et c'est ce que je veux ,alors pourquoi pas avec writer?
La voici
Option Explicit
Sub CopyZoneMemeClasseur()
Dim oDoc as Object, oRange as Object, aCopier as Object
oDoc = thisComponent
oRange = oDoc.Sheets(0).getCellByPosition(1,0) ' la zone à copier
oDoc.CurrentController.select(oRange) 'Sélection de la zone
aCopier = oDoc.CurrentController.getTransferable() 'Copie
oRange = oDoc.Sheets(1).getCellByPosition(1,0) 'cellule pour recopie de la zone
oDoc.CurrentController.select(oRange) 'Selection de la cellule
oDoc.CurrentController.insertTransferable(aCopier) 'Transfert des données
End Sub
Cordialement
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dim oDoc as Object, MaCellule as Object, aCopier as Object, MonCurseur as Object
oDoc = thisComponent
MaCellule = oDoc.TextTables.getByName("Tableau1").getCellByPosition(2,0) ' la zone à copier
MonCurseur = MaCellule.createTextCursor
MonCurseur.GotoEnd(True)
oDoc.CurrentController.select(MonCurseur) 'Sélection de la zone
aCopier = oDoc.CurrentController.getTransferable() 'Copie
MaCellule = oDoc.TextTables.getByName("Tableau3").getCellByPosition(1,0) 'Première cellule pour recopie de la zone
oDoc.CurrentController.select(MaCellule) 'Selection de la cellule
oDoc.CurrentController.insertTransferable(aCopier) 'Transfert des données
Il faut de plus que tous les objets soient ancrés au paragraphe (et non à la page) pour que le code ci-dessus les transfère.
A plus.
Dernière modification par joel275 le 12 avr. 2016 13:42, modifié 2 fois.