Modifier des caractères dans Vba en fonction de l'environnement Mac ou Windows

Gilles52300

XLDnaute Junior
Bonjour Messieurs,

Je voudrais savoir comment faire pour modifier des caractères suivant l'environnement mac ou windows.
Je travaille sur Mac, en en passant le fichier sous Windows, j'ai plusieurs caractères qui sont modifiés tels que le "é" qui devient un "Z avec un tilda dessus" ou bien le "à" qui se transforme en "^". Je voudrais aussi remplacer les ":" du chemin d'accès mac par "\" qui correspond au chemin d'accès windows.

pour définir 'l'environnement, j'ai ce bout de code qui fonctionne
Code:
Private Sub CommandButton1_Click()
'Vérification de l'environnement mac ou windows
    If Win32 Or Win64 Then
       MsgBox ("environnement windows")
    Else
        MsgBox ("environnement mac")
    End If
End Sub

mais ensuite, je ne vois pas comment faire pour vérifier tout le texte qui peut suivre et modifier les caractères automatiquement.

je vous remercie de votre aide.
Cordialement
Gilles
 

Gilles52300

XLDnaute Junior
Re : Modifier des caractères dans Vba en fonction de l'environnement Mac ou Windows

Alors pour l'impression suivant l'environnement mac ou windows, j'ai utilisé ceci :

Code:
     If Win32 Or win64 Then
                    chEmin = chEmin & Chr(92) & "Caisse" & Chr(92) & xMois 
                    Else
                    chEmin = chEmin & Chr(58) & "Caisse" & Chr(58) & xMois 
                End If
par contre pour modifier tous les autres caractère, si vous connaissais une méthode plus rapide...
 

job75

XLDnaute Barbatruc
Re : Modifier des caractères dans Vba en fonction de l'environnement Mac ou Windows

Bonjour Gilles52300,

Où avez-vous été pêcher ce code :

Code:
If Win32 Or Win64 Then
  MsgBox ("environnement windows")
Else
  MsgBox ("environnement mac")
End If
S'il n'y a pas Option Explicit, VBA considère que Win32 et Win64 sont des variables de type Variant.

Elles seront donc initialisées à Empty (zéro).

Et donc quel que soit l'ordi la MsgBox affichera "environnement mac" :rolleyes:

A+
 

Gilles52300

XLDnaute Junior
Re : Modifier des caractères dans Vba en fonction de l'environnement Mac ou Windows

Bonjour Job 75.

Je te remercie pour ta réponse qui m'est très utile.
N'ayant pas d'environnement windows sous la main, je n'avais pu tester et donc pas me rendre compte qu'il me donnait toujours la même réponse.

je me penche sur le problème.

merci encore.
 

Gilles52300

XLDnaute Junior
Re : Modifier des caractères dans Vba en fonction de l'environnement Mac ou Windows

Bon après quelque recherche complémentaire, j'ai deux solutions pour le chemin d'accès:

la première la plus simple qui permet de mettre le bon séparateur en fonction de l'environnement
mac ou windows :"chEmin = chEmin & cLient & Application.PathSeparator & Sfacture

et la seconde qui permet de déterminer les 3 premières lettre du système

Système as string
Systeme = Application.OperatingSystem
Systeme = Left(Systeme, 3)
MsgBox Systeme '(Mac ou Win)

par contre je recherche toujours une solution pour modifier les caractères qui changent en fonction de l'environnement.
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 979
dernier inscrit
bderradji