insertion ligne + report valeur cellule

V

VBA_ DEAD

Guest
Salut à tous,

J'ai une sorte de problème technique complexe… mais intéressant.

Je vous invite à regarder le fichier attaché qui est assez clair (je crois).

En fait je résume : Je travaille avec des filiales internationales (qui elles même vendent à l'étranger) et je leur demande de répartir leurs revenus par pays, type de client…

Donc je leur envoie un tableau reprenant leurs données financières communiquées et je leur demande de répartir finement leurs résultats par pays, ces données étant renvoyées ds une autre base. Et pour tout cela j'essaie d'imposer des zones de saisies.

La macro que je voudrais est qu'en me poitionnant sur une cellule de la colonne A, si je lance la macro, 1 ligne s'insère, que les valeurs de la colonne B et C se reportent sur la ligne créé et qu'une liste déroulante s'ouvre pour insérer un pays ds la colonne A de la ligne nouvellement créée. Mais regardez le fichier, tout est expliqué par étape.

Donc est ce que quelqu'un peut m'aider sur ce problème… qui est bien au dessus de mes compétences. Merci à tout le monde.

VBA DEAD [file name=saisidonnees.zip size=11694]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/saisidonnees.zip[/file]
 

Pièces jointes

  • saisidonnees.zip
    11.4 KB · Affichages: 19

michel_m

XLDnaute Accro
Bonjour VBADEAD

Ci dessous proposition à essayer après copier-coller dans le module feuil1(saisie):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Intersect(Target, Columns(1)) Is Nothing Or Target <> 'ND_COUNTRY' Then: Exit Sub
Target.Offset(1, 0).EntireRow.Insert
With Target
.Offset(1, 1) = .Offset(0, 1)
.Offset(1, 2) = .Offset(0, 2)
.Offset(1, 0).Validation.Add Type:=xlValidateList, Formula1:='=country'
End With
End Sub

Je n'utilise pas un combobox mais une liste à validation de données + facilement adaptable dans les cellules
L'ordre final diverge un peu de ta demande (ordre inverse des pays: france puis England s'affichera England puis France) mais simplifie grandement la macro.

A+
Michel_M
 
V

VBA_DEAD

Guest
Bonsoir Michel_M,

c'est ce que je voulais pour insérer les pays. Seul pb, j'ai pas le choix que je voulais. J'ai country ou ND-Country.

Peux tu m'envoyer un exemple ou sur mon fichier pour que je puisse voir 5 ou 6 pays car je sais pas comment je défini la liste cra cette liste comprend 70 pays environ. je dois les rajouter comment??

Merci pour ce morceau ds tous les cas.

VBA DEAD
 

michel_m

XLDnaute Accro
re,

Pourtant chez moi ca marche. Je te joins le bébé où j'ai sélectionné 2 pays sans pb

A moins que je n'ai pas compris ta demande; pourtant c'est un modèle du genre: félicitations et merci au passage.

Amicalement
Michel [file name=saisieretour.zip size=12927]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/saisieretour.zip[/file]
 
Dernière édition:
V

VBA_DEAD

Guest
Super Michel,

Merci Beaucoup. Là c'est clair pour moi.

Par contre, tu ne dois pas me féliciter de poser des questions quand même!! C'est toi que je félicitep our cette aide. faut pas inverser les rôles.

Bon pour les lecteurs qui se penchent sur mon probleme, il reste un morceau... petit morceau.

je veux insérer une ligne automatiquement lorsque je suis positionné sur une cellule de la colonne A et en même temps que l'insertion, je souhaite que se reporte les valeurs de la colonne B et C (voir exemple).

Merci aux visiteurs et encore merci Michel. je te souhaite une bonne soirée.

VBA_DEAD
 

Discussions similaires