Que signifie \ dans une expression VBA

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

RENAUDER

Nous a quitté
Repose en paix
Bonjour,

J'ai le code suivant :
iInt = Index \ 26

Si je teste ce code, tant que Index est <= à 26, iInt est égal à 0.
Lorsque Index est > à 26, iInt est égal à 1

Quelle fonction est simulée ou équivalente à \.
D'avance merci
 
Re : Que signifie \ dans une expression VBA

Bonsoir,
une petite question :
Comment fais-tu pour faire évoluer Index ?

Lorsque j'utilise ce mot tel quel dans ta fonction :

Code:
iInt = Index \ 26

Index me renvoie 1, et est considéré comme Long?
 
Re : Que signifie \ dans une expression VBA

Bonsoir,

Etrange, étrange....

Comme tu ne donnes pas le reste du code difficile à dire mais cela ressemble à une partie entière puisque Int(15/26)=0 et INT(32/26)=1...

Si Index = 100 as tu toujours comme résultat 1 ? ou bien 3 ?

Cordialement
 
Re : Que signifie \ dans une expression VBA

Bonjour,
Pour bhbh
Je n'ai pas mis tout le code mais Index est incrémenté de 1 à 255 correspondant au n° de colonnes de 1 à 255.
Par contre j'ai trouvé la réponse, il s'agit de :
Division de 2 nombres en un résultat entier
Si Index <=26
iInt = Index \ 26 donne 0

Si Index =27iInt = Index \ 26 donne 1
Et pour ceux que ça intéresse voici le code
Code:
Function GetColumnHeaderFromIndex(ByVal Index As Integer) As String
    Dim iInt%, iRest%
    If Index > 256 Then
        GetColumnHeaderFromIndex = vbNullString
    ElseIf Index < 27 Then
        GetColumnHeaderFromIndex = GetLetterFromNumber(Index)
    Else
        iInt = Index \ 26: iRest = Index Mod 26
        If iRest = 0 Then iInt = iInt - 1: iRest = 26
        GetColumnHeaderFromIndex = GetLetterFromNumber(iInt) & GetLetterFromNumber(iRest)
    End If
End Function

Function GetLetterFromNumber(ByVal Number As Integer) As String
    If Number < 1 Or Number > 26 Then GetLetterFromNumber = vbNullString Else GetLetterFromNumber = Chr$(Number + 64)
End Function
 
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
10
Affichages
561
Retour