J'utilise depuis assez longtemps une fonction et une Macro (trouvées
sur le forum - JB je crois) qui me permettent de tester si un fichier
est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f)
témoin = False
For Each i In Workbooks 'on parcourt la collection des classeurs
If UCase(i.Name) = UCase(f) Then
témoin = True
End If
Next i
Est_ouvert = témoin
End Function
Sub Vérif()
Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value
nf = Fichier_enregistre
If Not Est_ouvert(nf) Then
MsgBox "Le fichier " & nf & " n'est pas ouvert"
Else
MsgBox "Le fichier " & nf & " est déjà ouvert"
End If
End Sub
Cela fonctionne parfaitement. Le problème est que je travaille
maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui
fasse la même chose mais en vérifiant si le fichier est ouvert ou non
par quelqu'un d'autre (sur le serveur) avant d'enregistrer.
Est-ce possible ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Youky
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
Salut voici un exemple
Bien indiquer le chemin (pas fait)
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
On Error Resume Next
Windows("exemple.xls").Activate
If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls")
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de news:
eZSTEn%23NIHA.3816@TK2MSFTNGP04.phx.gbl...
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur
le forum - JB je crois) qui me permettent de tester si un fichier est déjà
ouvert sur mon ordinateur.
Function Est_ouvert(f)
témoin = False
For Each i In Workbooks 'on parcourt la collection des classeurs
If UCase(i.Name) = UCase(f) Then
témoin = True
End If
Next i
Est_ouvert = témoin
End Function
Sub Vérif()
Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value
nf = Fichier_enregistre
If Not Est_ouvert(nf) Then
MsgBox "Le fichier " & nf & " n'est pas ouvert"
Else
MsgBox "Le fichier " & nf & " est déjà ouvert"
End If
End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant
sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même
chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un
d'autre (sur le serveur) avant d'enregistrer.
Est-ce possible ?
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
JulieH
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne
comprends pas où indiquer le chemin, ni comment :
Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple
Bien indiquer le chemin (pas fait)
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
On Error Resume Next
Windows("exemple.xls").Activate
If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls")
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de news:
eZSTEn%23NIHA.3816@TK2MSFTNGP04.phx.gbl...
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur
le forum - JB je crois) qui me permettent de tester si un fichier est déjà
ouvert sur mon ordinateur.
Function Est_ouvert(f)
témoin = False
For Each i In Workbooks 'on parcourt la collection des classeurs
If UCase(i.Name) = UCase(f) Then
témoin = True
End If
Next i
Est_ouvert = témoin
End Function
Sub Vérif()
Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value
nf = Fichier_enregistre
If Not Est_ouvert(nf) Then
MsgBox "Le fichier " & nf & " n'est pas ouvert"
Else
MsgBox "Le fichier " & nf & " est déjà ouvert"
End If
End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant
sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même
chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un
d'autre (sur le serveur) avant d'enregistrer.
Est-ce possible ?
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
FFO
Salut Julieh
Pour compléter la proposition de Youky :
Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("G:tototititataexemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True
J'ai essayé celà fonctionne
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
Salut Julieh
Pour compléter la proposition de Youky :
Application.ScreenUpdating = False
On Error Resume Next
Windows("exemple.xls").Activate
If Err > 0 Then Err.Clear: Workbooks.Open ("G:tototititataexemple.xls")
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
J'ai essayé celà fonctionne
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne
comprends pas où indiquer le chemin, ni comment :
Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple
Bien indiquer le chemin (pas fait)
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
On Error Resume Next
Windows("exemple.xls").Activate
If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls")
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de news:
eZSTEn%23NIHA.3816@TK2MSFTNGP04.phx.gbl...
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur
le forum - JB je crois) qui me permettent de tester si un fichier est déjà
ouvert sur mon ordinateur.
Function Est_ouvert(f)
témoin = False
For Each i In Workbooks 'on parcourt la collection des classeurs
If UCase(i.Name) = UCase(f) Then
témoin = True
End If
Next i
Est_ouvert = témoin
End Function
Sub Vérif()
Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value
nf = Fichier_enregistre
If Not Est_ouvert(nf) Then
MsgBox "Le fichier " & nf & " n'est pas ouvert"
Else
MsgBox "Le fichier " & nf & " est déjà ouvert"
End If
End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant
sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même
chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un
d'autre (sur le serveur) avant d'enregistrer.
Est-ce possible ?
Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("G:tototititataexemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True
J'ai essayé celà fonctionne
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
Youky
Remplace chemin= ???? et fichier=???.xls Youky
Private Sub CommandButton1_Click() Application.ScreenUpdating = False chemin = ThisWorkbook.Path 'si dans même répertoire 'Chez moi chemin renvoie ceci mais j'ai pas de serveur 'chemin="C:Documents and SettingsBruno JEUNEMes documents" fichier = "hhmm.xls" 'le nom du fichier On Error Resume Next Windows(fichier).Activate If Err > 0 Then Err.Clear Workbooks.Open (chemin & "" & fichier) End If If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: %23tfoRR$
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
Remplace chemin= ???? et fichier=???.xls
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
chemin = ThisWorkbook.Path 'si dans même répertoire
'Chez moi chemin renvoie ceci mais j'ai pas de serveur
'chemin="C:Documents and SettingsBruno JEUNEMes documents"
fichier = "hhmm.xls" 'le nom du fichier
On Error Resume Next
Windows(fichier).Activate
If Err > 0 Then
Err.Clear
Workbooks.Open (chemin & "" & fichier)
End If
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de news:
%23tfoRR$NIHA.4912@TK2MSFTNGP06.phx.gbl...
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends
pas où indiquer le chemin, ni comment :
Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple
Bien indiquer le chemin (pas fait)
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
On Error Resume Next
Windows("exemple.xls").Activate
If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls")
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de
news: eZSTEn%23NIHA.3816@TK2MSFTNGP04.phx.gbl...
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur
le forum - JB je crois) qui me permettent de tester si un fichier est
déjà ouvert sur mon ordinateur.
Function Est_ouvert(f)
témoin = False
For Each i In Workbooks 'on parcourt la collection des classeurs
If UCase(i.Name) = UCase(f) Then
témoin = True
End If
Next i
Est_ouvert = témoin
End Function
Sub Vérif()
Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value
nf = Fichier_enregistre
If Not Est_ouvert(nf) Then
MsgBox "Le fichier " & nf & " n'est pas ouvert"
Else
MsgBox "Le fichier " & nf & " est déjà ouvert"
End If
End Sub
Cela fonctionne parfaitement. Le problème est que je travaille
maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui
fasse la même chose mais en vérifiant si le fichier est ouvert ou non
par quelqu'un d'autre (sur le serveur) avant d'enregistrer.
Est-ce possible ?
Private Sub CommandButton1_Click() Application.ScreenUpdating = False chemin = ThisWorkbook.Path 'si dans même répertoire 'Chez moi chemin renvoie ceci mais j'ai pas de serveur 'chemin="C:Documents and SettingsBruno JEUNEMes documents" fichier = "hhmm.xls" 'le nom du fichier On Error Resume Next Windows(fichier).Activate If Err > 0 Then Err.Clear Workbooks.Open (chemin & "" & fichier) End If If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: %23tfoRR$
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
JulieH
Je pense que cela devrait aller, je vais essayer tout à l'heure.
Merci à tous les deux Julie
Remplace chemin= ???? et fichier=???.xls Youky
Private Sub CommandButton1_Click() Application.ScreenUpdating = False chemin = ThisWorkbook.Path 'si dans même répertoire 'Chez moi chemin renvoie ceci mais j'ai pas de serveur 'chemin="C:Documents and SettingsBruno JEUNEMes documents" fichier = "hhmm.xls" 'le nom du fichier On Error Resume Next Windows(fichier).Activate If Err > 0 Then Err.Clear Workbooks.Open (chemin & "" & fichier) End If If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: %23tfoRR$
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?
Merci d'avance pour vos idées.
Julie
Je pense que cela devrait aller, je vais essayer tout à l'heure.
Merci à tous les deux
Julie
Remplace chemin= ???? et fichier=???.xls
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
chemin = ThisWorkbook.Path 'si dans même répertoire
'Chez moi chemin renvoie ceci mais j'ai pas de serveur
'chemin="C:Documents and SettingsBruno JEUNEMes documents"
fichier = "hhmm.xls" 'le nom du fichier
On Error Resume Next
Windows(fichier).Activate
If Err > 0 Then
Err.Clear
Workbooks.Open (chemin & "" & fichier)
End If
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de news:
%23tfoRR$NIHA.4912@TK2MSFTNGP06.phx.gbl...
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends
pas où indiquer le chemin, ni comment :
Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple
Bien indiquer le chemin (pas fait)
Youky
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
On Error Resume Next
Windows("exemple.xls").Activate
If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls")
If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
"JulieH" <julieh@discussions.microsoft.com> a écrit dans le message de
news: eZSTEn%23NIHA.3816@TK2MSFTNGP04.phx.gbl...
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur
le forum - JB je crois) qui me permettent de tester si un fichier est
déjà ouvert sur mon ordinateur.
Function Est_ouvert(f)
témoin = False
For Each i In Workbooks 'on parcourt la collection des classeurs
If UCase(i.Name) = UCase(f) Then
témoin = True
End If
Next i
Est_ouvert = témoin
End Function
Sub Vérif()
Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value
nf = Fichier_enregistre
If Not Est_ouvert(nf) Then
MsgBox "Le fichier " & nf & " n'est pas ouvert"
Else
MsgBox "Le fichier " & nf & " est déjà ouvert"
End If
End Sub
Cela fonctionne parfaitement. Le problème est que je travaille
maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui
fasse la même chose mais en vérifiant si le fichier est ouvert ou non
par quelqu'un d'autre (sur le serveur) avant d'enregistrer.
Est-ce possible ?
Je pense que cela devrait aller, je vais essayer tout à l'heure.
Merci à tous les deux Julie
Remplace chemin= ???? et fichier=???.xls Youky
Private Sub CommandButton1_Click() Application.ScreenUpdating = False chemin = ThisWorkbook.Path 'si dans même répertoire 'Chez moi chemin renvoie ceci mais j'ai pas de serveur 'chemin="C:Documents and SettingsBruno JEUNEMes documents" fichier = "hhmm.xls" 'le nom du fichier On Error Resume Next Windows(fichier).Activate If Err > 0 Then Err.Clear Workbooks.Open (chemin & "" & fichier) End If If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: %23tfoRR$
Bonjour et merci pour ta réponse,
Malgré quelques essais rapides, je n'y suis pas arrivée. Je ne comprends pas où indiquer le chemin, ni comment : Avec ChDir "G:tototititata" ?
Julie
Salut voici un exemple Bien indiquer le chemin (pas fait) Youky Private Sub CommandButton1_Click() Application.ScreenUpdating = False On Error Resume Next Windows("exemple.xls").Activate If Err > 0 Then Err.Clear: Workbooks.Open ("exemple.xls") If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Application.ScreenUpdating = True End Sub
"JulieH" a écrit dans le message de news: eZSTEn%
Bonjour,
Bonjour à toutes et tous,
J'utilise depuis assez longtemps une fonction et une Macro (trouvées sur le forum - JB je crois) qui me permettent de tester si un fichier est déjà ouvert sur mon ordinateur.
Function Est_ouvert(f) témoin = False For Each i In Workbooks 'on parcourt la collection des classeurs If UCase(i.Name) = UCase(f) Then témoin = True End If Next i Est_ouvert = témoin End Function
Sub Vérif() Fichier_enregistre = "XXXX - " & [Feuil4].[C6].Value nf = Fichier_enregistre If Not Est_ouvert(nf) Then MsgBox "Le fichier " & nf & " n'est pas ouvert" Else MsgBox "Le fichier " & nf & " est déjà ouvert" End If End Sub
Cela fonctionne parfaitement. Le problème est que je travaille maintenant sur un réseau. Je souhaiterais donc avoir une fonction qui fasse la même chose mais en vérifiant si le fichier est ouvert ou non par quelqu'un d'autre (sur le serveur) avant d'enregistrer. Est-ce possible ?