FORUM Tom's Hardware » Programmation » Autre » Boucle+compteur basic
 

Boucle+compteur basic

Il y a 313 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Boucle+compteur basic
 
Plus d'informations

Bonjour,
je rencontre un probleme lors de l'utilisation de ma macro.
L'objectif de cette macro est de remplir une ligne (et une seule) uniquement si celle ci est vide.
Les lignes sélectionnées sont de 4 à 12.
Si je viens à remplir une ligne, c'est à dire si une ligne est vide, alors je passe un booleen à faux et je sors de la boucle (afin de ne remplir qu'une seule ligne)
 
ex :
Quand le macro se lance, il doit vérifier si ma case B4 est vide. SI tel est le cas, alors il me lancera les instructions du if.
Sinon, il me test la case B5. Ainsi de suite jusqu'à 12.
Admettons que je remplisse la case B8, je veux sortir de ma boucle pour ne plus tester les cases suivantes car je viens de remplir une ligne.
 
Merci de vérifier la macro suivante et de m'aider à résoudre mon probleme
 
 

Code :
  1. Sub ajoutersalarie
  2.     Dim oDocument As Object, oSheet As Object, oCell As Object
  3.     Dim saisie as String
  4.     Dim ok As Boolean
  5.     Dim compteur as Integer
  6. oDocument=ThisComponent
  7. oSheet=oDocument.Sheets.getByName("SALARIES" )
  8. ok=false
  9. For compteur=4 To 12
  10.     oCell=oSheet.getCellByPosition(0,compteur)
  11.     Do [While ok = false]
  12.         If (ocell.getstring="" ) Then
  13.             saisie = InputBox ("Quel est le nom du salarié?","Ajouter un salarié","",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  14.             oCell=oSheet.getCellRangeByName(1,compteur)
  15.             oCell.setString(cStr(saisie))
  16.             saisie = InputBox ("Quel est le prénom du salarié?","Ajouter un salarié","",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  17.             oCell=oSheet.getCellRangeByName(2,compteur) 
  18.             oCell.setString(cStr(saisie))
  19.             saisie = InputBox ("Quel est l'adresse du salarié?","Ajouter un salarié","ex: 16, rue des Hesperides",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  20.             oCell=oSheet.getCellRangeByName(3,compteur) 
  21.             oCell.setString(cStr(saisie))
  22.             saisie = InputBox ("Quel est le code postal du salarié?","Ajouter un salarié","ex: 59320",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  23.             oCell=oSheet.getCellRangeByName(4,compteur)
  24.             oCell.setString(cStr(saisie))
  25.             saisie = InputBox ("Quel est la ville du salarié?","Ajouter un salarié","ex: Bordeaux",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  26.             oCell=oSheet.getCellRangeByName(5,compteur) 
  27.             oCell.setString(cStr(saisie))
  28.             saisie = InputBox ("Quel est le numéro de sécurité sociale du salarié?","Ajouter un salarié","ex: 1 68 10 59 150 090 03",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  29.             oCell=oSheet.getCellRangeByName(6,compteur) 
  30.             oCell.setString(cStr(saisie))
  31.             saisie = InputBox ("Quel est l'emploi du salarié?","Ajouter un salarié","ex: Vendeur",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  32.             oCell=oSheet.getCellRangeByName(7,compteur) 
  33.             oCell.setString(cStr(saisie))
  34.             saisie = InputBox ("Quel est le status du salarié?","Ajouter un salarié","cadre ou non cadre",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  35.             oCell=oSheet.getCellRangeByName(8,compteur)
  36.             oCell.setString(cStr(saisie))
  37.             saisie = InputBox ("Quel est le salaire brut du salarié (en euros)?","Ajouter un salarié","ex: 1500,00",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  38.             oCell=oSheet.getCellRangeByName(9,compteur)
  39.             oCell.setString(cStr(saisie))
  40.             saisie = InputBox ("oCell=oSheet.getCellByPosition(0,0)Quel est le pourcent du salarié?","Ajouter un salarié","ex: 0,50%",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  41.             oCell=oSheet.getCellRangeByName(10,compteur) 
  42.             oCell.setString(cStr(saisie))
  43.             saisie = InputBox ("Quel est l'avantage du salarié?","Ajouter un salarié","ex: 250,00",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  44.             oCell=oSheet.getCellRangeByName(11,compteur) 
  45.             oCell.setString(cStr(saisie))
  46.             saisie = InputBox ("Quel est le nombre d'heure/semaine du salarié?","Ajouter un salarié","ex: 35",3000,3000 ) ',3000,3000 donne la position d'ouverture de la fenetre
  47.             oCell=oSheet.getCellRangeByName(12,compteur)
  48.             oCell.setString(cStr(saisie))
  49.             ok=true
  50.         else
  51.             print "erreur"
  52.         End If
  53.     End Do
  54. End For
  55. End Sub


Message édité par kevcaus le 26-11-2005 à 11:33:09

Profil : Pointeur
Plus d'informations

balise [code] :o


---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Plus d'informations

oups désolé, je vais reposter ça dés que je suis a l'iut !!
j'ai pas le projet chez moi  
 

Profil : Pointeur
Plus d'informations

non tu peux éditer ton message :o http://img.presence-pc.com/forum/themes_static/images_forum/1/edit.gif


---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Plus d'informations

ah ué, je croyait qu ca allait faire du bordel en fait car les lignes se seraient mélanger mais nan !!
merci bien et dsl :=(
 :jap:  :jap:


Message édité par kevcaus le 01-12-2005 à 20:49:12

Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Programmation » Autre » Boucle+compteur basic
 

Annonces Google
Publicité