VBA - Excel - Macro Commande pr sup ligne n
Fermé
'sup
Messages postés
7
Date d'inscription
mercredi 16 juillet 2008
Statut
Membre
Dernière intervention
29 juillet 2008
-
16 juil. 2008 à 14:35
'sup Messages postés 7 Date d'inscription mercredi 16 juillet 2008 Statut Membre Dernière intervention 29 juillet 2008 - 21 juil. 2008 à 11:11
'sup Messages postés 7 Date d'inscription mercredi 16 juillet 2008 Statut Membre Dernière intervention 29 juillet 2008 - 21 juil. 2008 à 11:11
A voir également:
- VBA - Excel - Macro Commande pr sup ligne n
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Invite de commande - Guide
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Commande terminal mac - Guide
4 réponses
'sup
Messages postés
7
Date d'inscription
mercredi 16 juillet 2008
Statut
Membre
Dernière intervention
29 juillet 2008
17 juil. 2008 à 09:34
17 juil. 2008 à 09:34
personne n'aurait une suggestion?
michel_m
Messages postés
16602
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 312
17 juil. 2008 à 10:46
17 juil. 2008 à 10:46
Bonjour,
Autre manière les numéros de contrat sont en colonne A
Michel
Autre manière les numéros de contrat sont en colonne A
Sub reincrementer() Dim derlig As Long, lig As Long, numero As Long Dim rqt 'demande et vérifie si saisie valable derlig = Application.CountA(Columns(1)) rqt = InputBox(" numero contrat supprimé ?") If Application.CountIf(Range("A4:A" & derlig), rqt) = 0 Then: Exit Sub 'fige le défilement de l'écran Application.ScreenUpdating = False 'recherche lig à supprimer lig = Columns(1).Find(rqt).Row Rows(lig).Delete 'affecte le numero au dessus de la supression numero = Cells(lig - 1, 1) 'réincrémente les numéros de contrats While Cells(lig, 1) <> "" numero = numero + 1 Cells(lig, 1) = numero lig = lig + 1 Wend End Sub
Michel
'sup
Messages postés
7
Date d'inscription
mercredi 16 juillet 2008
Statut
Membre
Dernière intervention
29 juillet 2008
17 juil. 2008 à 12:58
17 juil. 2008 à 12:58
je vous remercie, j'essaye ça et vous donnerai des nouvelles des que possible ;-)
'sup
Messages postés
7
Date d'inscription
mercredi 16 juillet 2008
Statut
Membre
Dernière intervention
29 juillet 2008
21 juil. 2008 à 09:30
21 juil. 2008 à 09:30
bien, je n'ai testé que la proposition de michel_m car elle a marché du premier coup (cepandant, merci encore une fois a vautour88)
Par contre, j'ai noté que si je souhaitais supprimer le dernier, ou l'avant dernier contrat, cela ne marchait pas (rien ne se passe). Je vais donc me pencher sur le code pr voir d'ou ça peut venir...
merci
Par contre, j'ai noté que si je souhaitais supprimer le dernier, ou l'avant dernier contrat, cela ne marchait pas (rien ne se passe). Je vais donc me pencher sur le code pr voir d'ou ça peut venir...
merci
Ivan-hoe
Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
309
21 juil. 2008 à 10:19
21 juil. 2008 à 10:19
Bonjour,
...d'où l'on suppose que vos cellules A1 et A2 sont vides.
Remplacez
derlig = Application.CountA(Columns(1))
par
derlig = Cells(Columns(1).Rows.Count, 1).End(xlUp).Row
I.
...d'où l'on suppose que vos cellules A1 et A2 sont vides.
Remplacez
derlig = Application.CountA(Columns(1))
par
derlig = Cells(Columns(1).Rows.Count, 1).End(xlUp).Row
I.
'sup
Messages postés
7
Date d'inscription
mercredi 16 juillet 2008
Statut
Membre
Dernière intervention
29 juillet 2008
21 juil. 2008 à 11:11
21 juil. 2008 à 11:11
effectivement, les cellules A1,A2, et A3 sont vides.
Ai testé votre suggestion, qui marche parfaitement. Merci bien :-)
Ai testé votre suggestion, qui marche parfaitement. Merci bien :-)
17 juil. 2008 à 10:12
Dim Retour As Integer
Retour = MsgBox("Numero user", vbYesNo + vbCritical + vbDefaultButton2, "demande numero user")
retour=retour+3
cells(retour,2).value=""
cells(retour,3).value=""
retour=retour+1
do while cells(retour+1,2).value <> ""
cells(retour,2).value=cells(retour+1,2).value
cells(retour,3).value=cells(retour+1,3).value
retour=retour+1
loop
17 juil. 2008 à 10:13