Autres supprimer chaine de caractères en vba

  • Initiateur de la discussion Initiateur de la discussion gh4
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

gh4

XLDnaute Occasionnel
bonjour à toutes et tous,
je souhaiterai supprimer une chaine de caractère dans une cellule à partir d'un caractère définit en vba
Mais je n'ai aucune idée de comment faire.
ci joint un fichier pour exemple
par avance merci de votre aide
cdt
excel 2003
 

Pièces jointes

Dernière édition:
Solution
merci mais je les utilise comment?
Colonnes C, D et E :
Utilisation directe sur une feuille de calcul.

Colonnes F, G et H :
Utilisation via VBA. Cliquer sur le bouton bleu. Code dans la macro dans Module1:
VB:
Function AvantDiese(ByVal x As String) As String
   If x <> "" Then AvantDiese = Split(x, "#")(0)
End Function

Function SansPb00(ByVal x As String) As String
   If InStr(x, "pb00") = 1 Then SansPb00 = Mid(x, 5) Else SansPb00 = x
End Function

Function Tout(ByVal x As String) As String
   Tout = AvantDiese(SansPb00(x))
End Function

Sub ParVBA()
Dim i&
   With Sheets("Feuil1")
      For i = 2 To 6
         .Range("f" & i) = AvantDiese(.Range("a" & i))
         .Range("g" & i) = SansPb00(.Range("a" & i))
         .Range("h"...
Bonjour @gh4 🙂, @Hasco 😉.

Trois fonctions personnalisées utilisables en VBA ou sur une feuille de calcul (code à placer dans un module) :

VB:
Function AvantDiese(ByVal x As String) As String
   If x <> "" Then AvantDiese = Split(x, "#")(0)
End Function

Function SansPb00(ByVal x As String) As String
   If InStr(x, "pb00") = 1 Then SansPb00 = Mid(x, 5) Else SansPb00 = x
End Function

Function Tout(ByVal x As String) As String
   Tout = AvantDiese(SansPb00(x))
End Function
 
Dernière édition:
merci mais je les utilise comment?
Colonnes C, D et E :
Utilisation directe sur une feuille de calcul.

Colonnes F, G et H :
Utilisation via VBA. Cliquer sur le bouton bleu. Code dans la macro dans Module1:
VB:
Function AvantDiese(ByVal x As String) As String
   If x <> "" Then AvantDiese = Split(x, "#")(0)
End Function

Function SansPb00(ByVal x As String) As String
   If InStr(x, "pb00") = 1 Then SansPb00 = Mid(x, 5) Else SansPb00 = x
End Function

Function Tout(ByVal x As String) As String
   Tout = AvantDiese(SansPb00(x))
End Function

Sub ParVBA()
Dim i&
   With Sheets("Feuil1")
      For i = 2 To 6
         .Range("f" & i) = AvantDiese(.Range("a" & i))
         .Range("g" & i) = SansPb00(.Range("a" & i))
         .Range("h" & i) = Tout(.Range("a" & i))
      Next i
   End With
End Sub

edit : Bonsoir @Usine à gaz 😉.
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
14
Affichages
498
Réponses
20
Affichages
725
  • Question Question
XL 2021 Code Ascii
Réponses
14
Affichages
825
Retour