Supprimer des caracteres automatiquement

Fermé
vitedusoma Messages postés 7 Date d'inscription mardi 28 novembre 2017 Statut Membre Dernière intervention 5 octobre 2023 - 28 nov. 2017 à 01:35
vitedusoma Messages postés 7 Date d'inscription mardi 28 novembre 2017 Statut Membre Dernière intervention 5 octobre 2023 - 17 janv. 2018 à 00:43
Bonjour,
Voila .J'ai fait un fichier excel avec mes différentes actions en bourse.
J'ai réussi a insérer des sources externes (boursorama) pour avoir les cours en temps réel.
tout va bien .Lorsque j’appuie sur actualiser ,les cours sont bien actualisés. Mais .Parce qu'il y a un mais.
A partir de 17h30 Boursorama rajoute les signes suivants (c) aux cours de bourse (pour signifier la clôture). Et ces (c) me posent problèmes car il s'affichent dans les cellules et donc tout est corrompu.
j'arrive bien a supprimer manuellement ce (c) .Mais j'aimerais savoir si on peut le faire automatiquement .par exemple a l'ouverture du fichier ou en actualisant.

merci par avance
ps: je n'y connais rien en vba

A voir également:

1 réponse

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
28 nov. 2017 à 08:27
Bonjour,

Tu peux faire se lancer la macro automatiquement, lorsque par exemple, le contenu des cellules changent
https://silkyroad.developpez.com/VBA/EvenementsFeuille/#LII-E

Et pour "supprimer" les (c) tu peux simplement remplacer cette chaine par vide ""
https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-J
0
vitedusoma Messages postés 7 Date d'inscription mardi 28 novembre 2017 Statut Membre Dernière intervention 5 octobre 2023 2
17 janv. 2018 à 00:02
Bonsoir et merci pour la réponse.
j'ai bien réussi a créer une macro qui remplace "(c)" par " " (donc un vide).
Et qui se trouve dans le Module4

Sub supprimer()
'
' supprimer Macro
'

'
Cells.Replace What:="(c)", Replacement:=" ", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub



J'ai egalement creer un bouton qui actualise les différentes feuilles de cours.
Qui se trouve dans ThisWorkBook


Sub Actualiser()
'
' Actualiser Macro
'

'
ActiveWorkbook.RefreshAll
End Sub


Ce que je voudrais c'est en cliquant sur le bouton actualiser ,c'est actualisé . Ça il le fait.
Mais activer aussi la macro qui supprime les (c) et ceci sur toutes les feuilles ouvertes ou non.
Ou sinon que la macro de remplacement des (c) s’exécute sur toutes les feuilles en même temps.
Merci de m'avoir lu.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
Modifié le 17 janv. 2018 à 00:24
Bonjour,

Il te suffit de boucler sur chaque feuille de ton classeur
Un truc du genre :
Sub supprimer()
Dim sh as Worksheet

For each sh in ActiveWorkbook.sheets
     sh.Cells.Replace What:="(c)", Replacement:=" ", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next
End Sub 

Sub Actualiser()
'
' Actualiser Macro
ActiveWorkbook.RefreshAll
Call supprimer
End Sub 
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
17 janv. 2018 à 00:25
NB : A l'avenir... Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
0
vitedusoma Messages postés 7 Date d'inscription mardi 28 novembre 2017 Statut Membre Dernière intervention 5 octobre 2023 2
17 janv. 2018 à 00:35
merci pour la reponse et pardon pour le code.
ça semble marcher . le hic c'est qu'il faudrait que la macro "actualiser" s'active avant celle "supprimer"
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
17 janv. 2018 à 00:39
C'est le cas dans le code que je t'ai donné
0