[Résolu] [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
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 !
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 !
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 05 janv. 2023 18:30
[Résolu] [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonjour, je suis nouveau donc assez hésitant pour l'utilisation du forum. Voilà j'utilise LibreOffice 7 sous W7.
J'ai déjà vu des réponses sur le sujet du presse papier par Obasic mais jamais avec le process que je recherche vraiment.
LA QUESTION :
Sous calc, à chaque ligne du tableur que j'alimente en saisie, celui-ci me créé (avec concaténation de plusieurs cellules), un champ texte dans une cellule de la ligne en cours.
Je souhaite récupérer la valeur de la cellule créée dans une variable (ça je sais faire) et pouvoir l'envoyer dans le presse papier (ça je n'arrive pas), pour ensuite alimenter une page web avec la valeur obtenue (grâce à CTRL+V) dans le champ de la page WEB.
Donc en résumé :
Sub 1
'Je récupère la valeur texte dans une variable
v = la valeur de la 10ième cellule de la ligne en cours ' Ca c'est OK
'J'envoie la variable dans le presse papier (Attention c'est la variable texte que je veux envoyer)
Comment faire ?????????
End sub
Un fichier exemple est dispo en PJ pour que ce soit peut-être plus simple.
Voilà je vous remercie à l'avance en souhaitant mes meilleurs voeux à la communauté
J'ai déjà vu des réponses sur le sujet du presse papier par Obasic mais jamais avec le process que je recherche vraiment.
LA QUESTION :
Sous calc, à chaque ligne du tableur que j'alimente en saisie, celui-ci me créé (avec concaténation de plusieurs cellules), un champ texte dans une cellule de la ligne en cours.
Je souhaite récupérer la valeur de la cellule créée dans une variable (ça je sais faire) et pouvoir l'envoyer dans le presse papier (ça je n'arrive pas), pour ensuite alimenter une page web avec la valeur obtenue (grâce à CTRL+V) dans le champ de la page WEB.
Donc en résumé :
Sub 1
'Je récupère la valeur texte dans une variable
v = la valeur de la 10ième cellule de la ligne en cours ' Ca c'est OK
'J'envoie la variable dans le presse papier (Attention c'est la variable texte que je veux envoyer)
Comment faire ?????????
End sub
Un fichier exemple est dispo en PJ pour que ce soit peut-être plus simple.
Voilà je vous remercie à l'avance en souhaitant mes meilleurs voeux à la communauté
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par micmac le 10 janv. 2023 15:46, modifié 1 fois.
Raison : Balisage
Raison : Balisage
LibreOffice 7.0.7.0.M2 (X64)
sous Windows 10
sous Windows 10
-
- RespOOnsable forum
- Messages : 9580
- Inscription : 28 août 2010 08:45
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonjour et bienvenue sur le forum,
Votre fil a été déplacé dans le forum "Macros et API".
Veuillez noter le balisage obligatoire dans cette section (https://forum.openoffice.org/fr/forum/v ... 7493#p7493) : Dans le cas présent [Calc]
Votre titre < Presse papier > a été complété pour le rendre explicite de la question posée.
Cordialement
Votre fil a été déplacé dans le forum "Macros et API".
Veuillez noter le balisage obligatoire dans cette section (https://forum.openoffice.org/fr/forum/v ... 7493#p7493) : Dans le cas présent [Calc]
Votre titre < Presse papier > a été complété pour le rendre explicite de la question posée.
Accès direct à votre signature pour la corriger.Dans votre signature il y a écrit : OpenOffice 2.4 sous Windows XP
Cordialement
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur macOS
Outils > Options sur Windows = OpenOffice > Préférences sur macOS
-
- SuppOOrter
- Messages : 1047
- Inscription : 19 août 2018 05:20
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonsoir,
Je ne vois pas l'intérêt du truc mais bon.
Bien sûr il faut sélectionner la cellule au préalable via l'enregistreur de macro.
Je ne vois pas l'intérêt du truc mais bon.
Code : Tout sélectionner
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 05 janv. 2023 18:30
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonjour et merci de vôtre réponse. En fait l’intérêt est que je dois alimenter une application WEB avec des Nomenclatures
Que j'obtiens avec un tableur de traitement calc. Croyez-moi, j'ai un réel intérêt pour cette procédure.
Est-il possible de glisser la variable directement dans la la ligne de code :
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
????
Ce serait la solution que je recherche, merci et bonne journée.
Que j'obtiens avec un tableur de traitement calc. Croyez-moi, j'ai un réel intérêt pour cette procédure.
Est-il possible de glisser la variable directement dans la la ligne de code :
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
????
Ce serait la solution que je recherche, merci et bonne journée.
LibreOffice 7.0.7.0.M2 (X64)
sous Windows 10
sous Windows 10
-
- SuppOOrter
- Messages : 1047
- Inscription : 19 août 2018 05:20
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Code : Tout sélectionner
sub RecupData '//////////////////////////////////////////////////
' Récupère la variable
Doc = ThisComponent
Sel = Doc.CurrentSelection
Feuille = Doc.currentController.activeSheet
Feuille = Doc.Sheets.getByName("Chrono")
ActiveCoord = Sel(0).RangeAddress
ActiveCol = ActiveCoord.StartColumn
ActiveLig = ActiveCoord.StartRow
Dim DataConcaten as string
oCC = Doc.getCurrentController()
oCell = Feuille.getCellByPosition(9,ActiveLig)
oCC.select(oCell)
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
End Sub
Open Office 4.1.15 sous Windows 11
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 05 janv. 2023 18:30
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Merci pour la réponse, mais la variable n'est que déclaré dans la procédure.
Dim DataConcaten as string
?????
Bonne journée et meilleurs voeux
Dim DataConcaten as string
?????
Bonne journée et meilleurs voeux
LibreOffice 7.0.7.0.M2 (X64)
sous Windows 10
sous Windows 10
-
- RespOOnsable forum
- Messages : 9580
- Inscription : 28 août 2010 08:45
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Je vous rappelle mon précédent message.
La version d'OpenOffice ou de LibreOffice (Version officielle ou des dépôt et 32 ou 64 bits selon le cas), et le système sur lequel il tourne sont des informations essentielles pour obtenir des réponses adaptées.
Si votre signature n'est pas renseignée lors de votre prochain passage, le sujet sera verrouillé.
La version d'OpenOffice ou de LibreOffice (Version officielle ou des dépôt et 32 ou 64 bits selon le cas), et le système sur lequel il tourne sont des informations essentielles pour obtenir des réponses adaptées.
Si votre signature n'est pas renseignée lors de votre prochain passage, le sujet sera verrouillé.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur macOS
Outils > Options sur Windows = OpenOffice > Préférences sur macOS
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 05 janv. 2023 18:30
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonjour, je viens de le faire, merci de ce rappel. J'espère que tout est correct ?
Bonne journée.
Bonne journée.
LibreOffice 7.0.7.0.M2 (X64)
sous Windows 10
sous Windows 10
-
- SuppOOrter
- Messages : 1047
- Inscription : 19 août 2018 05:20
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Tu n'as pas besoin d'utiliser une chaîne. Il faut sélectionner la cellule.
As-tu testé le code proposé ?
Open Office 4.1.15 sous Windows 11
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 05 janv. 2023 18:30
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonjour, oui j'ai testé la procédure qui fonctionne. Cependant,
je veux éviter cet forme de code car la valeur de la cellule est déjà gérée avec une précédente procédure qui initialise
21 valeurs de cellules différentes dans des variables globales.
Et j'ai besoin de temps en temps, suivant d'autres procédures en cours, de mettre une des variables dans le presse papier afin de l'utiliser par la suite pour renseigner des champs sur une application WEB.
Voilà, mon besoin est vraiment d'envoyer uniquement une variable string dans le Presse papier de Windows.
J'aimerais vraiment éviter de consulter des cellules une deuxième fois afin de redéclarer la variable qui est déjà initialisée.
Bonne soirée,
JP
je veux éviter cet forme de code car la valeur de la cellule est déjà gérée avec une précédente procédure qui initialise
21 valeurs de cellules différentes dans des variables globales.
Et j'ai besoin de temps en temps, suivant d'autres procédures en cours, de mettre une des variables dans le presse papier afin de l'utiliser par la suite pour renseigner des champs sur une application WEB.
Voilà, mon besoin est vraiment d'envoyer uniquement une variable string dans le Presse papier de Windows.
J'aimerais vraiment éviter de consulter des cellules une deuxième fois afin de redéclarer la variable qui est déjà initialisée.
Bonne soirée,
JP
LibreOffice 7.0.7.0.M2 (X64)
sous Windows 10
sous Windows 10
-
- SuppOOrter
- Messages : 1047
- Inscription : 19 août 2018 05:20
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Dans ce cas, il faut faire appel au service SystemClipboard.
Il y a cet exemple : https://forum.openoffice.org/fr/forum/v ... mclipboard
Mais bon, une application web où l'on colle (action manuelle), je ne vois toujours pas l'intérêt.
Il ya certainement moyen de piloter ou mieux d'accéder à une base de données.
Il y a cet exemple : https://forum.openoffice.org/fr/forum/v ... mclipboard
Mais bon, une application web où l'on colle (action manuelle), je ne vois toujours pas l'intérêt.
Il ya certainement moyen de piloter ou mieux d'accéder à une base de données.
Open Office 4.1.15 sous Windows 11
-
- RespOOnsable forum
- Messages : 9580
- Inscription : 28 août 2010 08:45
Re: [Calc]Envoyer la valeur d'une cellule dans le Presse-Papier
Bonjour,
Dernière visite : 10 janv. 2023 13:55
Vous avez lu semble t-il les réponses qui vous ont été faites sans y donner de suite.
N'ayant plus de nouvelle, on peut en déduire que le problème est résolu ou ne se reproduit plus.
Merci de baliser par vous-même la prochaine fois.
Un remerciement fait aussi plaisir aux bénévoles qui vous ont consacré de leur temps.
La politesse fait également partie de la philosophie du logiciel libre.
En cas d'erreur, contactez l'équipe de modération pour la réouverture du fil.
Dernière visite : 10 janv. 2023 13:55
Vous avez lu semble t-il les réponses qui vous ont été faites sans y donner de suite.
N'ayant plus de nouvelle, on peut en déduire que le problème est résolu ou ne se reproduit plus.
Merci de baliser par vous-même la prochaine fois.
Un remerciement fait aussi plaisir aux bénévoles qui vous ont consacré de leur temps.
La politesse fait également partie de la philosophie du logiciel libre.
En cas d'erreur, contactez l'équipe de modération pour la réouverture du fil.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur macOS
Outils > Options sur Windows = OpenOffice > Préférences sur macOS