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

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.
 

skoobi

XLDnaute Barbatruc
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?
 

icarus

XLDnaute Nouveau
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.
 

Statistiques des forums

Discussions
311 733
Messages
2 082 019
Membres
101 872
dernier inscrit
Colin T