Microsoft 365 Supprimer des données dans différentes feuilles à l'aide d'un formulaire

jean_jack

XLDnaute Junior
Bonjour tous le monde j'espère que vous allez bien , je viens solliciter votre aide une nouvelle fois sur un code vba. J'ai crée un bouton qui fait appel à un formulaire vba, dans ce formulaire je peux rentrer une date et j'aimerai que les données correspondant à la date rentré dans le formulaire soient tous supprimés dans 4 feuilles différentes. Je précise que dans une même feuille la date en question peut être répétée plusieurs fois à la suite.

Dans le fichier joint le bouton supprimé se situe dans la feuille 'rapport ' et base de données où les données doivent être supprimés sont dans les feuilles ; BASEPROD, BASEFORAIRE, BASEHORAIRE2, BASECOM. J'ai déja bidouillé un code que j'ai trouvé sur le net mais il ne marche pas comme je le voudrais.

Si une ame charitable veut bien se donner le temps de me tiller un coup de mains ça serait génial

Merci d'avance pour votre aide .
 

Pièces jointes

  • RAPPORT-AMELIORE2.xlsm
    289.7 KB · Affichages: 6
Dernière édition:

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier joint les tableaux structuré ont été remaniés afin qu'ils ne comportent que le stricte minimum de ligne.
C'est une très mauvaise habitude de définir des tableaux structurés avec toutes les lignes vides des feuilles.
Mauvaise habitude pour occupation inutile de la mémoire, complication des macros, travail des différentes formules inutile.
Laissez excel gérer ce qu'il sait très bien gérer.

Au passage je les ai nommés (T_BaseHoraire,T_BaseCom etc.)

Cordialement
 

jean_jack

XLDnaute Junior
Bonjour,

Dans le fichier joint les tableaux structuré ont été remaniés afin qu'ils ne comportent que le stricte minimum de ligne.
C'est une très mauvaise habitude de définir des tableaux structurés avec toutes les lignes vides des feuilles.
Mauvaise habitude pour occupation inutile de la mémoire, complication des macros, travail des différentes formules inutile.
Laissez excel gérer ce qu'il sait très bien gérer.

Au passage je les ai nommés (T_BaseHoraire,T_BaseCom etc.)

Cordialement
Merci ROBLOCHON excellent, c'est exactement ce que je voulais faire, en plus mes macros s’exécutent plus vite. Vous faite du bon boulot les gars continuez comme ça.
 

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Attendez la prochaine fois, d'avoir fini un fil de discussion pour en ouvrir un deuxième ou tout au moins ne pas poser les mêmes questions dans des fils différents. La règle en générale est 1 question, 1 fil de discussion.

A bientôt
 

jean_jack

XLDnaute Junior
Re,

Attendez la prochaine fois, d'avoir fini un fil de discussion pour en ouvrir un deuxième ou tout au moins ne pas poser les mêmes questions dans des fils différents. La règle en générale est 1 question, 1 fil de discussion.

A bientôt
Ok je vais tacher de m'en souvenir, c'est juste que après avoir ouvert un autre fil de discussion pour la seconde question et ayant vu Mr CHALET disponible sur le permier fil j'en ai profité pour le lui poser je ne pensais pas que ça pourrait poser problème. Mais dorénavant je ferait plus attention.

Merci pour votre aide.
 
Dernière édition:

jean_jack

XLDnaute Junior
Bonjour,

Dans le fichier joint les tableaux structuré ont été remaniés afin qu'ils ne comportent que le stricte minimum de ligne.
C'est une très mauvaise habitude de définir des tableaux structurés avec toutes les lignes vides des feuilles.
Mauvaise habitude pour occupation inutile de la mémoire, complication des macros, travail des différentes formules inutile.
Laissez excel gérer ce qu'il sait très bien gérer.

Au passage je les ai nommés (T_BaseHoraire,T_BaseCom etc.)

Cordialement
Par contre j'ai une derière question à vous poser comment vous avez fait pour rémanier les tableaux pourqu'ils ne comportent que le strict minimum de ligne et que les formules vba suivent derrière. Cela pourrait m’être utile pour la suite ?
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

J'ai tout simplement supprimer manuellement les lignes vides des tableaux après les avoir sélectionnées.
Vous pouvez redimensionner un tableau. Dans excel 2010 (ma version) cela se trouve dans l'onglet 'Outils tableau' qui apparaît après avoir sélectionné au moins une cellule du tableau. A gauche de l'onglet sous 'Nom du tableau', il y a un bouton 'Redimensionner le tableau', il n'y a plus qu'à cliquer et sur ce bouton puis sélectionner l'entête et les lignes pleines du tableau.

A bientôt
 

jean_jack

XLDnaute Junior
Bonjour,

J'ai tout simplement supprimer manuellement les lignes vides des tableaux après les avoir sélectionnées.
Vous pouvez redimensionner un tableau. Dans excel 2010 (ma version) cela se trouve dans l'onglet 'Outils tableau' qui apparaît après avoir sélectionné au moins une cellule du tableau. A gauche de l'onglet sous 'Nom du tableau', il y a un bouton 'Redimensionner le tableau', il n'y a plus qu'à cliquer et sur ce bouton puis sélectionner l'entête et les lignes pleines du tableau.

A bientôt

OK bien reçu encore merci pour votre aide.

A bientôt.
 

Hajabauer

XLDnaute Nouveau
bonjour
j'ai un fichier qui comporte bien des formulaire ajouter modifier supprimer quand je clique sur supprimer im
l marche bien mais il supprime autres choses que ce que je veux q'il supprime
Voici le code
Sub supprimevoucher()

' Procedure permettant de supprimer definitivement un enregistrement

' Declaration des variables

Dim i As Integer
Dim supprimeligne As String

' Affectation des variables

supprimeligne = InputBox("Veuillez saisir le numéro d'ordre du Voucher à supprimer", "ATTENTION - SUPPRESSION")

' On se positionne la feuil de la source des données
With ThisWorkbook.Sheets ("Source")
' Compte le nombre Ligne de la colonne A et on remonte de 1 ligne
For i = .Range("A" & .Rows.Count).End(xlUp).Row To 2 Step -1

' Si correspondance entre le n° d'ordre et la ligne à supprimer, alors
If .Range("A" & i).Value = supprimeligne Then
If MsgBox("Confirmez-vous la suppression de ce voucher ?", vbYesNo, "Demande de confirmation de suppression") = vbYes Then
End If
' On supprime la ligne entiere
Rows(i).Delete

End If

Next i

End With
End Sub

Source la feuil contenant les donnees à supprimer mais il supprime la feuille ou il est place (le bouton supprimer
 

Discussions similaires

Statistiques des forums

Discussions
312 094
Messages
2 085 237
Membres
102 829
dernier inscrit
cdupire