Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Tester si un classeur est ouvert

3 réponses
Avatar
Mario
Bonjour,
question toute bete.
Comment tester en VB si un classeur est ouvert.
J'ai essay=E9, :
if Workbooks("blabla").isopen then...
mais =E7a ne marche pas...

3 réponses

Avatar
John Fuss
Essai :

Public Function classeurExiste(nomDuClasseur As String) As Boolean
On Error GoTo classeurExiste_Error
Workbooks(nomDuClasseur).Activate
classeurExiste = True
Exit Function
classeurExiste_Error:
classeurExiste = False
End Function



John

"Mario" a écrit dans le message de
news:43fe01c42b8b$0c4eb5f0$
Bonjour,
question toute bete.
Comment tester en VB si un classeur est ouvert.
J'ai essayé, :
if Workbooks("blabla").isopen then...
mais ça ne marche pas...
Avatar
Mario
Merci.

Ta fonction marche bien.
J'ai juste un petit problème, quand dans nom classeur, je
mets le chemin entier, ça ne marche pas, il faut que je
mette juste le nom du classeur... du coup, je développe
une fonction qui transforme le chemin du complet en nom
du classeur uniquement.

-----Message d'origine-----
Essai :

Public Function classeurExiste(nomDuClasseur As String)
As Boolean

On Error GoTo classeurExiste_Error
Workbooks(nomDuClasseur).Activate
classeurExiste = True
Exit Function
classeurExiste_Error:
classeurExiste = False
End Function



John

"Mario" a écrit
dans le message de

news:43fe01c42b8b$0c4eb5f0$
Bonjour,
question toute bete.
Comment tester en VB si un classeur est ouvert.
J'ai essayé, :
if Workbooks("blabla").isopen then...
mais ça ne marche pas...


.



Avatar
John Fuss
J'utilise ça avec :

Public Enum FileInfo 'Constantes pour spécifier les infos à obtenir d'un nom
de fichier
chemin = 0
Nom = 1
Extension = 2
NomComplet = 3
End Enum


'---------------------------------------------------------------------------
------------
' Procedure : GetFileInfo
' DateHeure : 03/11/2003 16:31
' Auteur : JohnFuss
' Sujet : Pour récupérer des infos sur un nom de fichier avec chemin
sans qu'il
' soit nécessaire d'exister
'---------------------------------------------------------------------------
------------
'
Public Function GetFileInfo(fichier As String, InfoNeeded As FileInfo,
Optional AvecSlash As Boolean = True) As String
Dim poz As Integer, ext As String, name As String, Path As String
Dim i As Integer
On Error Resume Next

ext = ""
For i = Len(fichier) To 1 Step -1
If Mid(fichier, i, 1) = "." And ext = "" Then
poz = i
ext = Right(fichier, Len(fichier) - i)
ElseIf Mid(fichier, i, 1) = "" Then
name = Mid(fichier, i + 1, Len(fichier) - i - Len(ext) - 1)
If AvecSlash Then
Path = Left(fichier, i)
Else
Path = Left(fichier, i - 1)
End If
Exit For
End If
Next
If name = "" Then name = Left(fichier, Len(fichier) - Len(ext) - 1)
Select Case InfoNeeded
Case chemin
GetFileInfo = Path
Case Nom
GetFileInfo = name
Case Extension
GetFileInfo = ext
Case NomComplet
GetFileInfo = name & "." & ext
End Select
End Function


John


"Mario" a écrit dans le message de
news:429601c42b94$0968e500$
Merci.

Ta fonction marche bien.
J'ai juste un petit problème, quand dans nom classeur, je
mets le chemin entier, ça ne marche pas, il faut que je
mette juste le nom du classeur... du coup, je développe
une fonction qui transforme le chemin du complet en nom
du classeur uniquement.

-----Message d'origine-----
Essai :

Public Function classeurExiste(nomDuClasseur As String)
As Boolean

On Error GoTo classeurExiste_Error
Workbooks(nomDuClasseur).Activate
classeurExiste = True
Exit Function
classeurExiste_Error:
classeurExiste = False
End Function



John

"Mario" a écrit
dans le message de

news:43fe01c42b8b$0c4eb5f0$
Bonjour,
question toute bete.
Comment tester en VB si un classeur est ouvert.
J'ai essayé, :
if Workbooks("blabla").isopen then...
mais ça ne marche pas...


.