begin process at 2012 02 11 12:36:34
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

VBA

 > FONCTION REPLACE POUR OFFICE 97

FONCTION REPLACE POUR OFFICE 97


 Information sur la source

Note :
Aucune note
Catégorie :VBA Classé sous :replace, office, vba, 97 Niveau :Débutant Date de création :16/01/2007 Vu :6 375

Auteur : erreurs404

Ecrire un message privé
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

Cette fonction n'existait pas sur Office 97 et inférieurs.

Source

  • Public Function Remplace(ByVal classStringValue As String, _
  • ByVal strSearch As String, _
  • ByVal strReplac As String, _
  • Optional ByVal IntStart As Integer = 0, _
  • Optional ByVal intCount As Integer = 2 ^ 16 / 2 - 1) As String
  • ' ------------------------------------------------
  • ' strSearch : chaîne recherchée
  • ' strReplac : chaîne qui se substituera
  • ' IntStart : Nombre d'occurrences à partir de laquelle commenceront les remplacements (par défaut 0)
  • ' IntCount : Nombre de valeurs qui seront remplacées (par défaut le maximum pour un type Integer)
  • ' ------------------------------------------------
  • Dim i As Integer, iCount As Integer, iStart As Integer
  • Dim strOut As String 'chaîne qui contiendra le résultat
  • iCount = 0
  • iStart = 0
  • If Len(classStringValue) > 0 Then
  • i = 1
  • ' Boucle qui parcourt la chaîne
  • Do While i <= Len(classStringValue)
  • If Mid(classStringValue, i, Len(strSearch)) = strSearch And iCount < intCount Then
  • 'cas d'une occurence trouvée et le nb maximum de remplacements n'est pas atteint
  • If iStart >= IntStart Then
  • strOut = strOut & strReplac
  • i = i + Len(strSearch)
  • iCount = iCount + 1 'on incrémente le compteur de remplacements
  • iStart = iStart + 1 'on incrémente le compteur d'occurences trouvées
  • Else 'le nombre de remplacement est atteint on laisse le caractère d'origine
  • iStart = iStart + 1
  • strOut = strOut & Mid(classStringValue, i, 1)
  • i = i + 1
  • End If
  • Else 'il n'y a pas de remplacement à faire la chaîne recherchée n'est pas trouvée
  • strOut = strOut & Mid(classStringValue, i, 1)
  • i = i + 1
  • End If
  • Loop
  • Remplace = strOut
  • Else
  • Remplace = ""
  • End If
  • End Function
Public Function Remplace(ByVal classStringValue As String, _
                            ByVal strSearch As String, _
                            ByVal strReplac As String, _
                            Optional ByVal IntStart As Integer = 0, _
                            Optional ByVal intCount As Integer = 2 ^ 16 / 2 - 1) As String
' ------------------------------------------------
' strSearch     :   chaîne recherchée
' strReplac     :   chaîne qui se substituera
' IntStart      :   Nombre d'occurrences à partir de laquelle commenceront les remplacements (par défaut 0)
' IntCount      :   Nombre de valeurs qui seront remplacées (par défaut le maximum pour un type Integer)
' ------------------------------------------------

Dim i As Integer, iCount As Integer, iStart As Integer
Dim strOut As String 'chaîne qui contiendra le résultat
iCount = 0
iStart = 0

If Len(classStringValue) > 0 Then
 i = 1
 ' Boucle qui parcourt la chaîne
 Do While i <= Len(classStringValue)
  If Mid(classStringValue, i, Len(strSearch)) = strSearch And iCount < intCount Then
   'cas d'une occurence trouvée et le nb maximum de remplacements n'est pas atteint
   If iStart >= IntStart Then
    strOut = strOut & strReplac
    i = i + Len(strSearch)
    iCount = iCount + 1 'on incrémente le compteur de remplacements
    iStart = iStart + 1 'on incrémente le compteur d'occurences trouvées
   Else 'le nombre de remplacement est atteint on laisse le caractère d'origine
    iStart = iStart + 1
    strOut = strOut & Mid(classStringValue, i, 1)
    i = i + 1
   End If
  Else  'il n'y a pas de remplacement à faire la chaîne recherchée n'est pas trouvée
   strOut = strOut & Mid(classStringValue, i, 1)
   i = i + 1
  End If
 Loop
 
 Remplace = strOut
Else
 Remplace = ""
End If

End Function

 Conclusion

Contrairement à d'autres sources ... elle ne plante pas si on fait
Remplace("Hello world !","lo","lolo")


 Sources du même auteur

Source avec Zip Source avec une capture GATEWAY - IRC BNC
Source avec Zip Source avec une capture CLIENT DE CHAT IRC {MYIRC VERSION 0.15}
Source avec une capture TRI ALPHABETIQUE D'UN TABLEAU
Source avec une capture COULEURS HEXA ---&GT; COULEURS MIRC
Source avec Zip Source avec une capture TESTEUR DE PROXY

 Sources de la même categorie

Source avec Zip GESTION PERSONNEL par oudlarbi
Source avec Zip Source avec une capture CALENDRIER EN VBA POUR EXCEL 2010 par nounou94
Source avec Zip Source avec une capture MANIPULER LES FENETRES ENFANT D'EXCEL par bigfish_le vrai
Source avec Zip Source avec une capture COLLECTION ID par Le Pivert
Source avec Zip Source avec une capture VBA MASQUE DE SAISIE NUMÉRIQUE par acive

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture CALENDRIER EN VBA POUR EXCEL 2010 par nounou94
AJOUTER DES TABLEAUX DANS WORD par djebbipgm
Source avec Zip Source avec une capture Source .NET (Dotnet) NOMBRE EN LETTRES par lermite222
VBA : GESTION DE VERSION D'OFFICE POUR LES RÉFÉRENCES (MS WO... par Gwen8
FONCTION REPLACE NON RECONNUE DANS VBA : UNE FONCTION DE REM... par RicoNuch

Commentaires et avis

Commentaire de Renfield le 17/01/2007 09:04:13 administrateur CS

une version qui comprend en prime l'argument Compare :

http://www.vbfrance.com/codes/MINI-FONCTION-REPLACE-POUR-VB5_24559.aspx

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Erreur 1911 avec office 2000 pro [ par Poups ] Lorsque j'essaie d'installer Office 2000 Pro sur ma machine avec Windows 2000, j'ai une erreur 1911 avec impossibilité d'inscrire la bibliothèque de t Fonction replace en VBA, problème [ par Spylover ] Bonjour,j'utilise chez moi Office XP et j'utilise la fonction replace(,,,) qui fonctionne très bien, à titre pro, j'essaie d'utiliser cette fonction e Problème fonction replace(,,,) en VBA [ par Spylover ] Bonjour,j'utilise chez moi Office XP et j'utilise la fonction replace(,,,) qui fonctionne très bien, à titre pro, j'essaie d'utiliser cette fonction e Problème VBA avec un REPLACE. [ par ferredan ] Bonjour,J'ai une feuille EXCEL dans laquelle, dans certaines cellules, il y a du texte de la forme "A=si(lc(3)=0;"";1)" (En réalité les formules sont Migration vba => Open Office [ par ZZEBULON ] &nbsp; &nbsp;Salut &#224; tous,Au bureau, nous allons peut-&#234;tre migrer d'office &#224; open office 2.0 (question de budget).Le probl&#232;me est VBA et Office XP [ par Ova ] Savez vous si les programmes écrits sous VBA 6 pour Office 2000 fonctionnent correctement sous Xp ???Pas moyen de trouver des infos à ce sujet ....Et Question pour ceux qui touchent en VBA/Office [ par ricomiracle ] Bonjour, Je fais un programme sur Excel et mon pbm porte maintenant sur la fonction &lt;Pr&#233;c&#233;dent&gt; (ou annuler) qui est commune &#224; to Pb VBA dans Access2000 (Office Premium) [ par Stéphane ] La première fois que je veux exécuter un code VBA dans Access2000, certains types et certaines fonctions ne snt pas reconnues. Par exemple: Dim db A [vba] Pb utilisation fonction replace avec excel [ par cokinoumasterflash ] Bonjour, je rencontre un probl&#232;me en utilisant la fonction replace.Ce que je cherche &#224; faire c'est de remplacer les virgules de mes cellules Probleme de Reference manquante VBA [ par helpvb ] Bonjour,J ai développé des macros VBA et suis sous environnement Office 11J ai besoin d assurer la compatibilité descendante dans la mesaure ou plusie


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,214 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales