Flux rss
Collection CommentÇaMarche.net
Rechercher : dans
Par : Mots clés Nom d'utilisateur
Messages sans réponse

[macro openoffice] programmation d'un msgbox

Didier61, le jeudi 26 octobre 2006 à 19:11:20 
 Signaler ce message aux modérateurs

<ccm>bonjour à tous
Je me lance dans les macos sous OOo 2.0.4 mais je débute. Dans Calc sur la 1ere feuille j'ai positionné des boutons qui me peremettent d'afficher l'une des dix autres feuilles une fois sur la feuille désirée j'ai plusieurs boutons qui me permettent d'imprimer une sélection. je ne trouve pas les solutions pour les problèmes suivants :
1) L'enregistreur prend en compte dans la macro le numéro de la feuille pour la faire apparaître mais je voudrais utiliser le nom de la feuille.

2) Je n'arrive pas insérer un msgbox avec deux boutons ok et annule afin de poser une question et confirmer l'impression ou l'annuler.
merci de votre aide
Didier

Configuration: Windows Xp - OOo 2.0.4

1

lami20j, le jeudi 26 octobre 2006 à 19:45:47
  • +4

Salut,

voilà pour msgbox

REM  *****  BASIC  *****

Sub Main
	dim repMsgBox as String
	'0 - seulement ok
	'1 - ok + annuler
	'2 - interromptre + réessayer + annuler
	'3 - oui + non + annuler
	'4 - oui + non
	'5 - réessayer + annuler
	'6 - ok
	
	'les icônes
	' 0 aucune
	' 16 message critique X
	' 32 Question ?
	' 48 Avertissement !
	' 64 Information i
	
	' choix du bouton par défaut
	' 0 le premier
	' 256 le 2ème
	' 512 le dernier
	
	' le type du message c'est la somme de 3 valeurs au choix
	
	'Ex : le type 3 avec question et le 2ème par défaut
	' 3 + 32 + 256 = 291
	repMsgBox=msgbox("Hello, je suis MsgBox",291)
	
	' ici je récupere le retour de msgbox
	msgbox repMsgBox


End Sub
lami20j

Répondre à lami20j

2

Didier61, le jeudi 26 octobre 2006 à 20:29:26

Merci lami20j d'avoir épondu aussi rapidement mais mon problème n'est pas entièrement résolu ceci est le début de ma macro

sub Imp1
dim repMsgBox as string
repMsgBox=msgbox("Voulez-vous imprimer cet état ?",289)

mais quelles sont les fonctions qui doivent suivre de manière à ce que lorsque je clic sur le bouton annuler il sorte de la macro et si je clic sur ok il poursuive ma macro ci dessous

oDocument = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$B$26:$R$43"
dispatcher.executeDispatch(oDocument, ".uno:GoToCell", "", 0, args1())
dim args2(2) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Copies"
args2(0).Value = 1
args2(1).Name = "Selection"
args2(1).Value = true
args2(2).Name = "Collate"
args2(2).Value = false
dispatcher.executeDispatch(oDocument, ".uno:Print", "", 0, args2())
End sub

merci

Répondre à Didier61

3

lami20j, le jeudi 26 octobre 2006 à 21:15:37
  • +2

Re,

REM  *****  BASIC  *****

Sub Main
' le msgbox retourne une valeur en fonction du bouton que tu utilises
' 1 pour ok
' 2 pour annuler
' à toi de découvrir le reste

	dim repMsgBox as String

	repMsgBox=msgbox("Hello, je suis MsgBox",1)
	
	
	'maintenant on va utiliser le retour du msgbox
	'donc en fonction du bouton utilisé on exécute quelque chose
	if repMsgBox=1 then
	   msgbox "Vous avez cliquez sur OK"
	elseif repMsgBox=2 then
	   msgbox "Vous avez cliques sur ANNULER"
	end If
End Sub
Et dans ton cas
REM  *****  BASIC  *****

Sub Main
' le msgbox retourne une valeur en fonction du bouton que tu utilises
' 1 pour ok
' 2 pour annuler
' à toi de découvrir le reste

	dim repMsgBox as String

	repMsgBox=msgbox("Voulez-vous continuer?",1,"Didier61 Macro")
	
	
	'maintenant on va utiliser le retour du msgbox
	'donc en fonction du bouton utilisé on exécute quelque chose
	if repMsgBox=1 then
	   oDocument = ThisComponent.CurrentController.Frame
		dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
		dim args1(0) as new com.sun.star.beans.PropertyValue
		args1(0).Name = "ToPoint"
		args1(0).Value = "$B$26:$R$43"
		dispatcher.executeDispatch(oDocument, ".uno:GoToCell", "", 0, args1())
		dim args2(2) as new com.sun.star.beans.PropertyValue
		args2(0).Name = "Copies"
		args2(0).Value = 1
		args2(1).Name = "Selection"
		args2(1).Value = true
		args2(2).Name = "Collate"
		args2(2).Value = false
		dispatcher.executeDispatch(oDocument, ".uno:Print", "", 0, args2()) 
	elseif repMsgBox=2 then
	   	msgbox "L'exécution a été annulée.",64,"Didier61 Macro"
	   	exit sub
	end If
End Sub
lami20j

Répondre à lami20j

4

Didier61, le vendredi 27 octobre 2006 à 00:21:15

Encore merci à lami20j ça fonctionne bien et la macro est la suivante :

sub Imp1
dim repMsgBox as string
repMsgBox=msgbox("texte désiré",somme des 3 chiffre de choix, "éventuellement non de msgbox")
if repMsgBox=1 then

(texte de la macro que l'on veut voir exécuter ou non)

elseif repMsgBox=2 then
exit sub
end If
end sub

Répondre à Didier61

5

-pyer, le mardi 5 décembre 2006 à 22:31:36

Bonjour,
j'aimerais savoir comment tu programmes les boutons pour naviguer entre les différentes feuilles du classeur. je migre de lotus 123 vers calc et ne trouve pas cette fonctionnalité.
Merci
-pyer

Répondre à -pyer

6

 Didier61, le mardi 5 décembre 2006 à 22:59:14

Bonsoir -pyer
Sur une feuille de calc tu positionne un bouton pour chacune des feuilles sur lesquels tu veux avoir accès et tu associes chaque bouton à une macro comme indiqué ci-dessous :

dim monDocument As Object, lesFeuilles As Object, maFeuille As Object, maCellule As Object

Sub choix1 'choix 1 correspond au nom de ta macro
monDocument = thisComponent
lesFeuilles = monDocument.Sheets
mafeuille = lesFeuilles.getByName("feuille1") 'entre guillemets le nom de la feuille que tu désire obtenir
maCellule = maFeuille.getCellRangeByName("D5") ' l'adresse de la cellule que tu veux sélectionner enventuellement
monDocument.currentController.Select(maCellule)
End sub
Didier61

Répondre à Didier61
Macro Openoffice Calc Je viens de transférer un fichier Excel sous OpenOffice, j'avais un bouton macro me permettant d'ajuster la hauteur des lignes qui ne fonctionne plus. J'ai voulu créer cette macro dans OpenOffice calc, sans connaitre Basic je l'ai enregistré. Outils /... www.commentcamarche.net/forum/affich-1338780-macro-openoffice-calc
Lancer 1 XTERM à partir d'1 macro OpenOffice Bonjour! J'ai "crée" un bouton dans une feuille de calcul openoffice. Ce bouton lance une macro OO. Mais j'aimerais pouvoir, à la suite de la macro, lancer une fenêtre xterm (UNIX) pour y écrire des commandes. Et-ce possible? Quelqu'un aurait une... www.commentcamarche.net/forum/affich-3157172-lancer-1-xterm-a-partir-d-1-macro-openoffice
Pb macro openoffice (Résolu) Bonjour à tous, J'ai besoin d'aide car je suis vraiment mauvais dans le domaine Je veux installer dicoOo pour writer de openoffice mais lorsque j'ouvre le fichier dicoOo.sxw j'ai le message: "l'execution des macros est desactivé en raison des... www.commentcamarche.net/forum/affich-3825398-pb-macro-openoffice
Insérer une barre de progression sous PowerPointINSERER UNE BARRE DE PROGRESSION Pour permettre de visualiser l'avancement d'un exposé, une barre de progression peut être affichée en bas du diaporama. Voici comment procéder: Une fois le diaporame réalisé, allez dans Outils, Macro et Visual... www.commentcamarche.net/faq/sujet-7737-inserer-une-barre-de-progression-sous-powerpoint
Supprimer complètement un programmeMalgré la désinstallation d'un programme, il se peut que des clés de registre ou des fichiers soient encore présents sur le PC. Si la méthode "classique" (clic droit/supprimer) ne fonctionne pas, il suffit d'utiliser l'éditeur du registre. Mise en... www.commentcamarche.net/faq/sujet-519-supprimer-completement-un-programme
Désactiver l'exécution de certains programmes au démarrageDésactiver l'exécution de certains programmes au démarrage - Windows 98/Me/2000/XP/Vista Avec msconfig Avec Winpatrol Remarques Lorsque vous installez des logiciels, certains s'exécutent à chaque démarrage de votre ordinateur.... www.commentcamarche.net/faq/sujet-6816-desactiver-l-execution-de-certains-programmes-au-demarrage
Macro : OpenOffice - répéter exécutionBonjour, Voici mon "problème": j'ai un texte avec 500 lignes, j'ai créé une macro qui rajoute automatiquement du texte à la fin d'une ligne (ex: le mot "Homme" ou "Femme") et qui va ensuite à la ligne. Ma question est la suivante: comment faire en... www.commentcamarche.net/forum/affich-10076647-macro-openoffice-repeter-execution
Macro et openofficebonjour, Je veux ecrire une macro sous openoffice qui me créerai plusieurs nouvelles feuilles avec des noms différents mais je ne vois pas vraiment comment faire. Quelqu'un peut-il m'aider. Merci www.commentcamarche.net/forum/affich-1800362-macro-et-openoffice
OOoBasic, macro sous openoffice linuxBonjour j'aimerai faire une macro sous OpenOffice Calc. Mais je n'arrive pas à trouver comment écrire dans une cellule à partir d'une macro ou affecter la valeur d'une cellule à une autre cellule. Et aussi je ne trouve pas l'opérateur = En basic le =... www.commentcamarche.net/forum/affich-1700186-ooobasic-macro-sous-openoffice-linux
Télécharger Super Macro Super Macro est un logiciel gratuit qui permet de créer des macros sous Windows afin de déclencher diverses actions automatiques. En plus d’être gratuit, ce logiciel est facile à utiliser et ne requiert aucune connaissance en programmation. On doit... www.commentcamarche.net/telecharger/telecharger-34055987-super-macro
Télécharger OpenOffice.orgOpenOffice est une suite bureautique complète entièrement gratuite. Il est Idéale pour substituer à Microsoft Office, en effet il est compatible avec toutes les versions de la suite Microsoft Office. De qualité professionnelle, l’ application... www.commentcamarche.net/telecharger/telecharger-92-openoffice-org
Télécharger MOREFUNC (Macro complémentaire EXCEL)Morefunc est une macro complémentaire proposant 67 nouvelles fonctions de feuille de calcul pour Excel. Ces fonctions sont compatibles avec Excel 95 à 2007. Elles ne sont pas portables sur d'autres plate-formes que Windows, ni sur d'autres... www.commentcamarche.net/telecharger/telecharger-34056283-morefunc-macro-complementaire-excel
Enterprise Resource Planning (ERP) - Progiciel de Gestion IntégrIntroduction aux ERP Les ERP (en anglais Enterprise Resource Planning), aussi appelés Progiciels de Gestion Intégrés (PGI), sont des applications dont le but est de coordonner l'ensemble des activités d'une entreprise (activités dites verticales... www.commentcamarche.net/contents/entreprise/erp.php3
Introduction à la programmation des CGIPrésentation de l'interface CGI Un script CGI (Common Gateway Interface, traduisez interface de passerelle commune) est un programme exécuté par le serveur web (on dit généralement « côté serveur »), permettant d'envoyer au navigateur de... www.commentcamarche.net/contents/cgi/cgiintro.php3
Analyste programmeur (développeur)Développeur Le métier de développeur (également nommé analyste-programmeur) consiste à concevoir et à développer une application informatique, c'est-à-dire transcrire un besoin en une solution informatique écrite dans un langage informatique.... www.commentcamarche.net/contents/metiers-informatique/analyste-programmeur-developpeur.php3