Comment lier des lignes sur des feuilles séparées

  • Initiateur de la discussion Initiateur de la discussion icarus
  • Date de début Date de début

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 !

icarus

XLDnaute Nouveau
Bonjours à tous

Voici mon petit problème. Je cherche à savoir comment lier des lignes sur des feuilles séparées sous une certaine condition.

J'ai écris une macro pour écrire dans une feuille tableau et dans une feuille "Choisy" si une certaine condition est rempli. Ma question est la suivante peut supprimer automatiquement dans la feuille "Choisy" si je la supprime dans la feuille "tableau"

Voici le code VBA pour reporter la ligne.

If DITB.Value = "" Then
MsgBox ("Il n'y a pas de numero de DI")
End If
Sheets("Tableau").Select
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = DITB.Value
ActiveCell.Offset(0, 1) = adTB.Value
ActiveCell.Offset(0, 2) = CommunesCB.Value
ActiveCell.Offset(0, 3) = depotTB.Value
ActiveCell.Offset(0, 4) = listCB.Value
ActiveCell.Offset(0, 5) = codeTB.Value

If depotTB.Value = "Choisy" Then
Sheets("Choisy").Select
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = DITB.Value
ActiveCell.Offset(0, 1) = adTB.Value
ActiveCell.Offset(0, 2) = CommunesCB.Value
ActiveCell.Offset(0, 3) = listCB.Value
ActiveCell.Offset(0, 4) = codeTB.Value
Sheets("Tableau").Select
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
End If

Merci d'avance à tous.
 
Re : Comment lier des lignes sur des feuilles séparées

Bonjour,

Au début de la macro tu écris:

Code:
If DITB.Value = "" Then
MsgBox ("Il n'y a pas de numero de DI")
End If

Est-ce tout ce qui doit se passer si "DITB" est vide?
Je veux dire par là est-ce que tu veux stoper la macro également?

Sinon, je te propose le code suivant afin d'éviter les "Select" qui sont inutiles en VBA et ralentie la macro:

Code:
Sub azer()
If DITB.Value = "" Then
   MsgBox ("Il n'y a pas de numero de DI")
End If
Set FTab = Sheets("Tableau")
Set FChois = Sheets("Choisy")
With FTab.Range("A1").End(xlDown).Offset(1, 0)
   .Value = DITB.Value
   .Offset(0, 1) = adTB.Value
   .Offset(0, 2) = CommunesCB.Value
   .Offset(0, 3) = depotTB.Value
   .Offset(0, 4) = listCB.Value
   .Offset(0, 5) = codeTB.Value
End With
If depotTB.Value = "Choisy" Then
   With FChois.Range("A1").End(xlDown).Offset(1, 0)
      .Value = DITB.Value
      .Offset(0, 1) = adTB.Value
      .Offset(0, 2) = CommunesCB.Value
      .Offset(0, 3) = listCB.Value
      .Offset(0, 4) = codeTB.Value
   End With
End If
Sheets("Tableau").Select
Range("A1").End(xlDown).Offset(1, 0).Select
End Sub
peut supprimer automatiquement dans la feuille "Choisy" si je la supprime dans la feuille "tableau"
Si tu "vide" adTB,CommunesCB,listCB et codeTB et que tu relance la macro ça se fera non?
 
Re : Comment lier des lignes sur des feuilles séparées

Salut skoobi

D'abord merci pour m'avoir simplifié le code initial.

Pour repondre à ta première question l'utilsateur est obligé de saisir un N° de DI. Donc j'ai utiliser un msgbox en rappel si n'il y pas de N° de DI.

Ma question est la suivante puis-je supprimé une ligne de la feuille tableau en supprimant par la même occasion sa soeur jumelle dans la feuille choisy sans passer par un userform?


merci d'avance.
 
- 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

  • Question Question
Microsoft 365 Code VBA
Réponses
2
Affichages
461
Réponses
3
Affichages
517
Réponses
2
Affichages
707
Réponses
4
Affichages
744
  • Question Question
Microsoft 365 Programme trop lent
Réponses
12
Affichages
883
Réponses
4
Affichages
585
Retour