VBA simple : comment faire une série d'identifiant à partir d'un chiff

VBA simple : comment faire une série d'identifiant à partir d'un chiff - VB/VBA/VBS - Programmation

Marsh Posté le 24-04-2014 à 14:26:13    

Salut tout le monde,
 
Bon, j'ai accepté un job qui necessite pas mal de macros et..... j'en ai jamais faites ! :D
Vu que les ordis et moi sommes plutot amis, j'ose esperer que ca va l'faire, et que je serais capable d'apprendre assez vite...
 
Là, j'ai l'impression que ca reste simple (mais j'y arrive po)
 
J'ai une cellule qui indique le nombre de superviseur (par ex: 20)
A partir de là, j'aimerais que sur un autre onglet, se créent 20 identifiants dans la colonne A (S01 -S02-etc...), un par ligne.
 
Ca ne devrait pas être très compliqué, non ?
 
Merci à tout ceux qui auront envie d'aider !
 
:-)

Reply

Marsh Posté le 24-04-2014 à 14:26:13   

Reply

Marsh Posté le 24-04-2014 à 17:43:56    

 
           Bonjour, bonjour,
 
           pas besoin de code pour cela, B-A-BA d'utilisation d'Excel oblige !
 
           Saisir le premier identifiant dans une cellule (S01) puis avec la croix noire dans le coin inférieur droit,
           faire glisser vers le bas, l'incrémentation est automatique (sinon voir avec la touche Shift) …
 
           Si vraiment un code est nécessaire, vu les règles du forum, par exemple le point [0C], sans compter la présentation peu détaillée,
           ne pas oublier l'Enregistreur de macros livrant sur un plateau une base de code !
 
           Ainsi en publiant ce code dans cette discussion (avec l'icône dédiée pour le baliser) accompagné des nécessaires explications,
           de l'aide pourrait être apportée …
 

Reply

Marsh Posté le 24-04-2014 à 18:01:56    

Hello,
 
Et oui, sauf qu'en fait, le nombre de superviseur sera un parametre saisi par l'utilisateur, et l'utilité des S01, etc sera de definir un menu déroulant sur un onglet suivant, pour que l'utilisateur puisse definir "qui supervise quoi"
 
Faire le menu deroulant à partir d'une liste fixe, facile, d'une liste plus ou moins longue saisie par l'utilisateur, j'y arrive aussi, mais c'est betement de mettre 1 - 2 - etc que je vois pas comment faire.
 
Et vu que je n'ai pour le moment pas excel (je bosse de chez moi sur openoffice), j'essaie de rassembler les pieces du puzzle avant des les assembler en vrai.
 
Mais t'as raison, je suis impatiente, et avec l'enregistreur, je resoudrais deja pas mal de mes questions avant de vous emmerder...
 
Je reviendrais sans doute quand j'aurais excel et donc des questions plus concrete, en attendant, je finis la construction sans macro de mon fichier, et je finis la lecture de VBA pour les nuls :-)
 
Bonne fin de journée

Reply

Marsh Posté le 27-04-2014 à 17:45:48    

Bonjour à tous,
 
Je reviens vers vous après avoir enfin excel et avoir ingurgité toute sorte de cours VBA.
Je cherche donc à creer un certains nombre d'identifiants automatiques, nombre qui dependra d'un chiffre indiqué par l'utilisateur.
 
J'ai réussi à pondre un truc très basique qui me convient presque.
D'abord j'ai écrit S01 en "U1" et S02 en "U2"
<code>
Sub Creation_code_superviseur()
Dim x As Integer
Dim lCode_superviseur As Integer
 
x = pNbre_Superviseurs
 
Range("u1:u2" ).Select
Selection.AutoFill Destination:=Range("U1:u10" ), Type:=xlFillDefault
 
End Sub
 
</code>
 
Ce code là me crée les identifiants comme j'en ai envie jusque 10. Comment faire pour lui faire creer les identifiants jusque x ?
 
Merci d'avance pour votre aide !

Reply

Marsh Posté le 27-04-2014 à 23:37:21    

 
           Serait mieux avec la balise entre [ ]
 
 
           Sinon un exemple :
 

Code :
  1. [U1].AutoFill [U1].Resize(x)


 

Reply

Marsh Posté le 28-04-2014 à 14:22:42    

Merci beaucoup.
 
En fait vu que mes identifiants serviront uniquement à faire une liste de validation, je m'en suis sortie autrement en faisant ecrivant tout les identifiants possible sur une colonne, et en definissant la liste de validation des données avec =decaler(;;;Nbre_superviseur).
 
Et ca marche :-)
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed