Synchroniser cellules Excel avec TCD
Bonjour à toutes et à tous,
Je viens vers vous car malgré mes recherche sur internet je n'arrive pas à débloquer mon programme.
Je suis entrain de réaliser une application qui servira à l'entreprise pour laquelle je travail à réaliser des devis de transport.
L'application en elle même avance bien et je suis assez content du résultat que j'ai à l'heure actuelle mais j'aimerais l'automatiser un peu plus pour que les utilisateur n'ai pas àfaire grand chose mise à part a cliquer sur des boutons et remplir des textbox sur des Userform.
De ce fait j'essaie de synchroniser un tableau croiser dynamique avec les résultat de mes Userform qui sont stocker dans des cellules de mon Excel et c'est la que ça coince
Lorsque l'utilisateur clique sur le bouton INCOTERM présent sur la feuille "devis" et qu'il choisi "CIF" ou "CFR" un autre UserForm apparait lui demandant de choisir un "port de départ", un "pays d'arrivé" et un "port d'arrivé" (lui même relier au pays). Il clique sur enregistrer et le résultat est stoker dans différentes cellules de la feuille "devis".
Or, j'ai créer un TCD contenant une BDD filtré par rapport au "port de départ" et au "port d'arriver" qui me donne les coût de transport.
Ce que j'aimerais obtenir, c'est qu'une fois que l'utilisateur à renseigné le "port de départ" et le "port d'arrivé" et qu'il a cliqué sur "enregistrer que mon TCD récupère ces données et qu'il s'en serve comme filtre pour me donner les coût.
A l'heure actuelle, il est obliger de faire les deux séparer.
Auriez vous une idée pour résoudre mon problème ?
Cordialement,
Guillaume
PS mon TCD se trouve en "AE34"
voici le fichier
Dsl il était trop grand du coup j'ai du le simplifier au maximum et le compresser
Bonjour,
A tester.
Cdlt.
Private Sub CommandButton2_Click()
Dim pt As PivotTable
With Worksheets("Devis")
.Range("Q58").Value = Me.ComboBox_Port.Value
.Range("P58").Value = Me.ComboBox_Pays.Value
.Range("P54").Value = Me.TB_Pay.Value
.Range("Q54").Value = Me.TB_Liv.Value
.Range("R54").Value = Me.TB_Ad.Value
.Range("S54").Value = Me.TB_Dapar.Value
.Range("T54").Value = Me.TB_TpsTra.Value
.Range("U54").Value = Me.TB_CouPea.Value
.Range("R58").Value = "non"
Set pt = .PivotTables(1)
With pt
.ManualUpdate = True
.PivotCache.Refresh
.ClearAllFilters
.PivotFields("Port de départ").CurrentPage = Me.TB_Liv.Value
.PivotFields("Port d'arrivé").CurrentPage = Me.ComboBox_Port.Value
.ManualUpdate = False
End With
End With
LIV_CFR.Hide
OK = True
End SubMerci a toi Jean-Eric, ça marche à la perfection