Access 97 : substitutions pour mid/mid$ ; worksheetfunction.min ; worksheetfunction.max

Description

Normalement, il ne serait pas nécessaire d'écrire ces procédures, mais il semble que :
1 - Mid/Mid$ (extraction d'une sous-chaine) ne soit pas implémentée sous access 97
2 - utilisant Excel, je peux appeler "WorkSheetFunction.Min" et "WorkSheetFunction.Min". Or ce ne doit pas être le cas sous access 97. Raison de la présence de ces fonctions de substitution (enfin presque, car ici, ces fonctions ne comparent que 2 valeurs, ce qui est suffisant pour un usage courant et pour le fonctionnement de "Mid/Mid$).

Source / Exemple :


Attribute VB_Name = "Mid_Acces"
' REDLUPUS 2004 : Procédures de substitution (utilisateurs access):
' Mid/Mid$ ; WorkSheetFunction.Min et WorkSheetFunction.Max
Option Explicit

' =====================================
Public Function Min(ByVal V1, V2)
' -------------------------------------
' Substitut à la fonction "WorksheetFunction.Min"
' retourne la plus petite des deux valeurs V1 et V2
' =====================================
If V1 < V2 Then Min = V1 Else: Min = V2
End Function

' =====================================
Public Function Max(ByVal V1, V2)
' -------------------------------------
' Substitut à la fonction "WorksheetFunction.Max"
' retourne la plus grande des deux valeurs V1 et V2
' =====================================
If V1 > V2 Then Max = V1 Else: Max = V2
End Function

' =====================================
Public Function Mid1(ByVal St As String, _
                     ByVal Beg As Byte, _
                     ByVal L As Byte) As String
' -------------------------------------
' Substitut à la fonction Mid/Mid$
' Retourne la sous-chaîne de longueur "L",
' extraite de "St", en commençant à la
' position "Beg".
'   St      chaîne d'origine
'   Beg     Position de départ
'   L       longueur à extraire
' =====================================
Mid1 = Right$(Left$(St, Beg + L - 1), _
              Max(0, Min(L, Len(St) - Beg + 1)))
End Function

Conclusion :


Espérant que çà rendra service à "idefixfix", suite à sa question.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.