4 messages in org.openoffice.fr.prog[prog] RE : [prog] while condition
FromSent OnAttachments
bopouvSep 25, 2005 3:03 pm 
Francois GattoSep 25, 2005 9:30 pm 
michel tanguySep 25, 2005 10:35 pm 
bopouvSep 26, 2005 9:06 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:[prog] RE : [prog] while conditionActions...
From:michel tanguy (bugb@club-internet.fr)
Date:Sep 25, 2005 10:35:54 pm
List:org.openoffice.fr.prog

Bonjour

Tu peux tester cette adaptation

sub creeFeuille Dim MonDocument As Object Dim LesFeuilles As Object Dim rang as integer Dim classe as string Dim macellule as object, mafeuille as object

MonDocument = ThisComponent LesFeuilles = MonDocument.Sheets mafeuille = lesfeuilles.getbyname("Commandes")

Do rang = rang + 1 macellule = mafeuille.getcellbyposition(7,rang) classe = macellule.string

If classe="" Then Exit Do LesFeuilles.insertNewByName(classe,-1) Loop

MsgBox "BRAVO" end sub

Cordialement Michel

-----Message d'origine----- De : bopouv [mailto:bo@ouvaton.org] Envoyé : lundi 26 septembre 2005 00:04 À : prog Objet : [prog] while condition

Bonjour,

C'est ma premiere macro Je veux creer autant de feuilles que de classes J'ai inscrit l'intitulé de mes classes dans une colonne La macro crée les feuilles en descendant d'une cellule à chaque tour et je voudrais qu'elle s'arrete lorsqu'elle rencontre une cellule vide

mes feuilles se créent (bien) mais j'obtiens un message d'erreur

runtime error basic exception type :com.sun.star.unoexception Message:.

et la ligne LesFeuilles.insertNewByName(classe,-1) se met en rouge La condition après le While est elle bonne ?

sub creefeuille rem Créer des feuilles

Dim MonDocument As Object Dim NouvelleFeuille As Object, LesFeuilles As Object Dim rang as integer Dim classe as string Dim macellule as object Dim mafeuille as object

MonDocument = ThisComponent LesFeuilles = MonDocument.Sheets mafeuille = lesfeuilles.getbyname("Commandes")

rang = 1 macellule = mafeuille.getCellByPosition(7,rang) classe = macellule.string While classe<>""

macellule = mafeuille.getcellbyposition(7,rang) classe = macellule.string LesFeuilles.insertNewByName(classe,-1)

rang = rang + 1

Wend MsgBox "BRAVO" end sub

merci