[Excel2003-VBA] Création de lignes en fonction d'une valeur

Bonjour,

j'aurais souhaité un peu d'aide pour la création d'une action précise sur Excel 2003.

Voila, je voudrais que la valeur (nombre) entrée dans une cellule conditionne la création du même nombre de lignes, qui apparaissent en dessous, et éventuellement colorées.

Par la suite, il faudrait que la feuille de calcul "demande" à l'utilisateur de nommer ces 3 équipes, et que les noms apparaissent en tête de ligne, mais ça c'est une autre histoire, chaque chose en son temps

Merci d'avance à ceux qui prendront sur leur temps pour me répondre!

Bonjour

Avec une MFC

402classeur1.zip (9.18 Ko)

Amicalement

Nad

Voici un petit fichier avec MFC.

Pour la suite, je sais pas comment faire. J'y réfléchi après le repas.

a +,

Elfi

197equipe.xls (15.00 Ko)

Merci beaucoup pour vos réponses à tous les deux

Question : comment avez vous fait pour effectuer cette MFC? Je ne vois aucune formule, ni aucune macro...

Et seul petit problème (si je puis me permettre...), c'est que les lignes sont coloriées, mais pas vraiment créées : si il y avais une cellule avec je-ne-sais-quoi dedans au niveau de ces lignes, elle va être inclue dedans au lieu de se retrouver décalée plus bas.

Thanks again!

Pour ce qui est fait, il s'agit de Mise en Forme Condirtionnelle (MFC). Tu vas dans "Format" - "Mise en forme conditionnelle" et tu trouveras. Pour le reste, ton exemple ne donnait pas de cellule occupée dessous. C'est la raison pour laquelle les MFC étaient la solution la plus simple.

En raison de tes interrogations, il faut passer par une macro, je pense. Je te tiens au courant.

Amicalement,

Elfi

Merci,

je suis aussi en train de plancher sur une macro, certaines fonctions VBA comme Rows apparaissent comme pouvant aider.

A bientot!

Coucou, me revoilou.

Regarde le fichier et vois ce que tu en pense. A mon avis, la macro "empirique" que je t'ai faite (jusqu'à trois lignes)doit pouvoir être améliorée par les pros du forum.

Tiens moi au courant,

Elfi

136equipe.zip (9.21 Ko)

Pour répondre à une question de Russ, j'ai fais le fichier joint.

Ca ne me convient pas. Dans le code, y a-t-il possibilité de faire mieux?

je m'explique. De façon empirique, j'ai été jusqu'à l'insertion de trois lignes. Peut-on faire évoluer la macro pour que le nombre de lignes insérées se fasse automatiquement en fonction du nombre dans la cellule B2

D'avance, merci

amicalement,

Elfi

128equipe.zip (9.23 Ko)

Bonjour

Avec ce code :

Sub InsererLigne()

Dim nbligne As Long
Dim Premligne As Integer

Application.ScreenUpdating = False

nbligne = Range("b2").Value

Premligne = 4
Rows(Premligne & ":" & Premligne + nbligne).Insert

End Sub

Amicalement

Nad

Bonjour le forum, bonjour Nad,

Merci pour ton code. Il me convient en partie. Cependant, je ne saisi pas où intégrer la copie des cellules L2:O2 pour qu'elles se fasse automatiquement sur les lignes insérées comme dans ma macro initiale.

A te relire

amicalement,

Elfi

Bonjour

Regarde si le fichier te convient.

147copie-de-equipe.zip (20.50 Ko)

Amicalement

Nad

RebonjourNad,

à mon goût, c'est super. J'espère que ça conviendra à Russ.

Merci et bravo

amicalement,

Elfi

Salut à vous deux!

Oui cela me convient parfaitement Juste à adapter quelques petits trucs par la suite, mais c'est nikel!

Merci de vous être creusé la tête tous les deux, vous m'avez apporté une aide précieuse.

A bientot.

-- 22 Mar 2010, 16:20 --

Je suis de retour. Voici une macro que l'on m'a conseillé (merci à Polux31), elle marche très bien aussi, je vous en fait part :

Sub Test()

End Sub

Du coup j'essaye de la perfectionner un peu, en maitrisant chaque aspect de la ligne créée.

2 petites choses que j'aimerais faire : définir une formule et une liste déroulante.

Pour la formule, ce serait quelquechose du genre multiplier les 2 valeurs que l'utilisateur a rentré juste avant (nombres 1 et 2). Je pensais mettre quelquechose comme ça dans la boucle FOR :

multiplication = Cells(A, lig) * Cells(B, lig)

Range("C" & lig).Value = multiplication

Mais cela ne fonctionne pas...

Et de même je n'arrive pas à définir une liste déroulante (par exemple pour la 4eme cellule de chaque ligne) dans ma macro.

Si vous avez quelques conseils je suis preneur Merci d'avance !

Bonjour à tous,

Je suis actuellement confronté à une problématique.

Je n'arrive pas à trouver de code pour multiplier l'insertion de ligne suivant une valeur inscrite dans un userform.

Voici un petit bout de mon code :

nombreOP = ""

Sheets("ETAPE 3").Select

Rows("7:7").Insert shift:=x1Up

D'avance Merci

Rechercher des sujets similaires à "excel2003 vba creation lignes fonction valeur"