Ouverture fichier s'il n'est pas ouvert VBa
Résolu
olympiklyon
Messages postés
69
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai une macro, au début j'ouvre un fichier nommée "essai n1kjh" mais il se peut qu'il soit déja ouvert.
Voici ma macro, l'endroit de l'ouverture est souligné.
___________________________________________________
Sub Macro4()
'
' Macro4 Macro
'
' Touche de raccourci du clavier: Ctrl+o
ligne = ActiveCell.Row
nom = ActiveWorkbook.Name
Selection.Copy
Workbooks.Open "C:\Documents and Settings\JeanMarie\Bureau\essai n1kjh"
Windows("essai n1kjh.xls").Activate
Sheets(Sheets.Count).Select
' Selectionne la première cellule du tableau
Range("B7").Select
' Boucle tant que pas vide
Do While Not (IsEmpty(ActiveCell))
NbLigne = NbLigne + 1
Selection.Offset(1, 0).Select
Loop
Selection.PasteSpecial Paste:=xlPasteValues
MsgBox "Ligne " & ActiveCell.Row
Range("B7").Select
' Boucle tant que pas vide
Do While Not (IsEmpty(ActiveCell))
NbLigne = NbLigne + 1
Selection.Offset(1, 0).Select
Loop
Windows(nom).Activate
Range("I1").Select
Selection.Copy
Windows("essai n1kjh.xls").Activate
Selection.Offset(-1, -1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.Offset(0, 3).Select
Selection.ClearContents
Selection.Offset(0, 1).Select
Selection.ClearContents
Titre = "Pièces Manquantes"
Message = "Indiquez le nombre pieces manquantes"
MaValeur = InputBox(Message, Titre, Defaut)
Selection = MaValeur
Windows("essai n1kjh.xls").Activate
ActiveWorkbook.Save
___________________________________________________________
Merci d'avance
A+
olympikyon =)
J'ai une macro, au début j'ouvre un fichier nommée "essai n1kjh" mais il se peut qu'il soit déja ouvert.
Voici ma macro, l'endroit de l'ouverture est souligné.
___________________________________________________
Sub Macro4()
'
' Macro4 Macro
'
' Touche de raccourci du clavier: Ctrl+o
ligne = ActiveCell.Row
nom = ActiveWorkbook.Name
Selection.Copy
Workbooks.Open "C:\Documents and Settings\JeanMarie\Bureau\essai n1kjh"
Windows("essai n1kjh.xls").Activate
Sheets(Sheets.Count).Select
' Selectionne la première cellule du tableau
Range("B7").Select
' Boucle tant que pas vide
Do While Not (IsEmpty(ActiveCell))
NbLigne = NbLigne + 1
Selection.Offset(1, 0).Select
Loop
Selection.PasteSpecial Paste:=xlPasteValues
MsgBox "Ligne " & ActiveCell.Row
Range("B7").Select
' Boucle tant que pas vide
Do While Not (IsEmpty(ActiveCell))
NbLigne = NbLigne + 1
Selection.Offset(1, 0).Select
Loop
Windows(nom).Activate
Range("I1").Select
Selection.Copy
Windows("essai n1kjh.xls").Activate
Selection.Offset(-1, -1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.Offset(0, 3).Select
Selection.ClearContents
Selection.Offset(0, 1).Select
Selection.ClearContents
Titre = "Pièces Manquantes"
Message = "Indiquez le nombre pieces manquantes"
MaValeur = InputBox(Message, Titre, Defaut)
Selection = MaValeur
Windows("essai n1kjh.xls").Activate
ActiveWorkbook.Save
___________________________________________________________
Merci d'avance
A+
olympikyon =)
A voir également:
- Ouverture fichier s'il n'est pas ouvert VBa
- Fichier bin - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans system - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
3 réponses
Merci pour votre aide. mais j'ai plus rapide c'est
On Error Resume Next
Workbooks("essai n1kjh.xls").Activate
If Err then Err.Clear: Workbooks.Open "C:\Documents and Settings\Jeanmarie\Bureau\essai n1kjh.xls"
On Error Resume Next
Workbooks("essai n1kjh.xls").Activate
If Err then Err.Clear: Workbooks.Open "C:\Documents and Settings\Jeanmarie\Bureau\essai n1kjh.xls"
Bonjour,
Si je comprends bien, tu désire savoir si le fichier est déjà ouvert ?
Exemple :
Cdt
Lupin
Si je comprends bien, tu désire savoir si le fichier est déjà ouvert ?
Exemple :
Option Explicit ' Sub Macro4() Dim Reponse As Boolean Dim NomFichier As String NomFichier = "essai n1kjh.xls" Reponse = False Call TestFichierOuvert(NomFichier, Reponse) If Not (Reponse) Then Workbooks.Open "C:\Documents and Settings\JeanMarie\Bureau\essai n1kjh.xls" End If ' Code ... End Sub ' Sub TestFichierOuvert(ByVal NomFic As String, ByRef Resul As Boolean) Dim Classeur As Workbook Resul = False For Each Classeur In Workbooks If (Classeur.Name = NomFic) Then Resul = True End If Next Classeur End Sub '
Cdt
Lupin