wallon14
Messages postés56Date d'inscriptionvendredi 17 octobre 2003StatutMembreDernière intervention 3 juillet 2005
-
22 déc. 2003 à 11:31
cs_Draconagi
Messages postés34Date d'inscriptionvendredi 9 avril 2004StatutMembreDernière intervention 9 octobre 2006
-
20 avril 2004 à 09:32
Salut !
Je suis en train de faire une macro assez compliquée (pour moi) sous excel, et je souhaiterai savoir comment modifier une chaine de caractère récupérée d'un tableau croisé dynamique.
J'ai tenté quelque chose, mais cela n'a rien donné de très satisfaisant...
La chaine a modifier est du type :
'Données Brutes'!$A$1:$E$42681
Je souhaiterai modifier la valeur 42681
(par exemple, mais un code fonctionnant avec n'importe quelle zone de la chaine serait idéale)
Voici mon code (qui marche très mal)
' Selection du Tableau Croisé Dynamique Général
Sheets("France").Select
ActiveSheet.PivotTables("Tableau croisé dynamique37").PivotSelect "", _
xlDataAndLabel
ZoneTDV = ActiveSheet.PivotTableWizard.SourceData
MsgBox (ZoneTDV)
' Selection de tout ce qui est derriere les ":L"
subZoneTDV0 = Right(ZoneTDV, Len(ZoneTDV) - InStr(ZoneTDV, ":L"))
MsgBox (subZoneTDV0)
subZoneTDV11 = Left(subZoneTDV0, 5)
subZoneTDV1 = Right(subZoneTDV11, 4)
MsgBox (subZoneTDV1)
' Selection des 22 premiers caractères
subZoneTDV2 = Left(ZoneTDV, 23)
MsgBox (subZoneTDV2)
' Copie du nombre de colonnes
subZoneTDV3 = Right(ZoneTDV, 2)
'Paramètrage de modification de tout ce qui est derriere les ":"
'Copie de la nouvelle valeur pour le TDV
ZoneTDV = subZoneTDV2 + CStr(Lignes) + subZoneTDV3
MsgBox (ZoneTDV)
ActiveSheet.PivotTableWizard.SourceData = ZoneTDV
wallon14
Messages postés56Date d'inscriptionvendredi 17 octobre 2003StatutMembreDernière intervention 3 juillet 2005 23 déc. 2003 à 09:21
:(
Ca fait trois messages que je poste pour des questions d'un niveau qui doit faire rigoler 70% des visiteurs, et pourtant je n'ai pas eu une seule aide sur mes 3 problèmes...
cs_Draconagi
Messages postés34Date d'inscriptionvendredi 9 avril 2004StatutMembreDernière intervention 9 octobre 20061 20 avril 2004 à 09:32
Qu'es qui te met comme message d'erreur?
Sinon essaye avec la fonction replace vers la fin de ton prog.
A mon avis tu devrais définir quel résultat tu veux obtenir.
Soit ton prog remplace dans la première ligne et s'arrête soit il enchaîne ligne après ligne et dans ce cas il te manque une boucle.
Sinon la fonction replace est plutot bien.