Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Problème entre PC et MAC

  • Initiateur de la discussion Initiateur de la discussion letof911
  • 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 !

L

letof911

Guest
Bonjour le forum,

j'ai quelques soucis avec la fonction split qui fonctionne sous PC mais il n'y a pas d'équivalent sous excel MAC OS X.


Merci de votre aide.

Voici deux exemples de codes :

1)
ce bout de code me permet de mettre des majuscules sur les premières lettres du jour et du mois

ShF.Range("A11").Value = "Le " & Format(ShLF.Range("B" & Lig).Value, "dddd dd mmmm yyyy")
'Mise en forme de la date
Dim TableauDate() As String
Dim NouvelleDate As String
Dim ind As Integer
TableauDate = Split(ShF.Range("A11").Value, " ")
For ind = 0 To UBound(TableauDate)
If ind = 1 Then
NouvelleDate = NouvelleDate & " " & StrConv(TableauDate(ind), vbProperCase)
ElseIf ind = 3 Then
NouvelleDate = NouvelleDate & " " & StrConv(TableauDate(ind), vbProperCase)
Else
NouvelleDate = NouvelleDate & " " & TableauDate(ind)
End If
Next
ShF.Range("A11").Value = NouvelleDate
2)
Celui-ci extrait la quantité d'un produit qui se trouve entre crochets dans le libellé du produit

Dim TableauArticle() As String
Dim Unité As String
Dim Len_Dési As Integer
Unité = Split(ShLF.Range("I" & Lig).Offset(0, décalage).Value, "[")
For ind = 0 To UBound(TableauArticle)
If ind = 1 Then
Unité = TableauArticle(ind)
End If
Next
Unité = Left(Unité, Len(Unité) - 1)
 
Re : Problème entre PC et MAC

Bonsoir

Fait un essais avec code, VBA utilise la fonction d'Excel NOMPROPRE, qui permet de mettre en majuscule la première lettre de chaque mots.
Code:
ShF.Range("A11") = "Le " & Format(ShLF.Range("B" & Lig).Value, "dddd dd mmmm yyyy")
ShF.Range("A11") = Application.Proper(ShF.Range("A11"))

Pour le deuxième code, si j'avais la description de ta chaîne de caractère, il sera possible avec la fonction InStr et Mid de retourner la quantité.

@+Jean-Marie
 
Re : Problème entre PC et MAC

Bonjour le forum,
Merci Jean-Marie,

en recherchant un peu plus j'ai pu m'en sortir avec les fonctions mid, instr. Voici ma solution:

La chaine étant du type : "libellé de l'article vendu [Litres]" où je dois extraire l'unité de l'article vendu.
*****************************************************
Dim Unité As String
Dim Len_Dési As Integer
Dim agauche As Integer
Dim adroite As Integer
agauche = InStr(ShLF.Range("I" & Lig).Offset(0, décalage).Value, "[")
adroite = InStr(ShLF.Range("I" & Lig).Offset(0, décalage).Value, "]")
Unité = Mid(ShLF.Range("I" & Lig).Offset(0, décalage).Value, agauche + 1, adroite - 1)
Unité = Left(Unité, Len(Unité) - 1)
Len_Dési = Len(ShLF.Range("I" & Lig).Offset(0, décalage).Value) - (Len(Unité) + 2)
Article = Left(ShLF.Range("I" & Lig).Offset(0, décalage).Value, Len_Dési).
********************************
merci à tous
 
Re : Problème entre PC et MAC

Bonjour

Pour répondre à ton message en privé

Le séparateur d'arborescence sur le système mac, est le ":" et non "/". Avant ":Users:......", il te faut nommé le nom du disque dur, regarde du côté de application.path.

@+Jean-Marie
 
Re : Problème entre PC et MAC



C'est noté merci de ton aide
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
411
Réponses
4
Affichages
732
Réponses
5
Affichages
909
Réponses
4
Affichages
754
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…