XL 2016 inserser un nombre de ligne sur commande

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

abdourhaman

XLDnaute Nouveau
bonjours à tous je suis nouveau sur le forum et nouveau en vba excel je viens à vous pour demander votre aide sur un petit projet.
dans mon programme, je demande à l'utilisateur indique dans textbox1.text le nombre de ligne dont il a besoin et je veux que mon tableau situer sur la deuxième feuille comporte exactement le même nombre de ligne que celui indiquer dans textbox1.text et que tous les autre cellules situer hors de ce tableau soient bloquées
et tout autre suggestion pour l'amélioration de mon travail est la bienvenue
 

Pièces jointes

Bonjour le fil, abdourhaman

Si j'ai bien compris la question, voici ma proposition
(code VBA à mettre à place de celui qui est déjà dans l'userform)
VB:
'SAISIE DES DONNEES
Private Sub CommandButton1_Click()
Dim lOBj As ListObject, NBLigne As Long, TOTALigne As Long
Set lOBj = Sheets("Données de maintenance").ListObjects(1)
NBLigne = TextBox1
TOTALigne = lOBj.Range.Rows.Count - 1
lOBj.Resize lOBj.Range.Resize(TOTALigne + NBLigne, 4)
Unload UserForm1
End Sub

Private Sub UserForm_Initialize()
Dim lOBj As ListObject
Set lOBj = Sheets("Données de maintenance").ListObjects(1)
lOBj.Resize lOBj.Range.Resize(2, 4)
MsgBox "Bienvenu(e) dans cette application excel, utilisant la maintenance de PARRETOT." _
& Chr(13) & "Grace à elle vous aurez les noms des 20% de vos machines causant 80% des pannes de votre système." _
& Chr(13) & Chr(13) & "Veuillez saisir les données pour appliquer ce principe de maintenance"
End Sub
 
Bonjour le fil, abdourhaman

Si j'ai bien compris la question, voici ma proposition
(code VBA à mettre à place de celui qui est déjà dans l'userform)
VB:
'SAISIE DES DONNEES
Private Sub CommandButton1_Click()
Dim lOBj As ListObject, NBLigne As Long, TOTALigne As Long
Set lOBj = Sheets("Données de maintenance").ListObjects(1)
NBLigne = TextBox1
TOTALigne = lOBj.Range.Rows.Count - 1
lOBj.Resize lOBj.Range.Resize(TOTALigne + NBLigne, 4)
Unload UserForm1
End Sub

Private Sub UserForm_Initialize()
Dim lOBj As ListObject
Set lOBj = Sheets("Données de maintenance").ListObjects(1)
lOBj.Resize lOBj.Range.Resize(2, 4)
MsgBox "Bienvenu(e) dans cette application excel, utilisant la maintenance de PARRETOT." _
& Chr(13) & "Grace à elle vous aurez les noms des 20% de vos machines causant 80% des pannes de votre système." _
& Chr(13) & Chr(13) & "Veuillez saisir les données pour appliquer ce principe de maintenance"
End Sub
merci l'ami
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
13
Affichages
755
Réponses
12
Affichages
966
Retour