Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin: _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boin8u$rcm$1@news-reader5.wanadoo.fr...
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin: _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin: _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Euh, et où et comment j'insère la mise en page ?
Cordialement
"Joël" a écrit dans le message de news:
boinnp$u5e$Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin: > _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifiquepuis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuitechoisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Euh, et où et comment j'insère la mise en page ?
Cordialement
"Joël" <joel@joelgarbe.fr> a écrit dans le message de news:
boinnp$u5e$1@news-reader5.wanadoo.fr...
Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boin8u$rcm$1@news-reader5.wanadoo.fr...
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin: > _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Euh, et où et comment j'insère la mise en page ?
Cordialement
"Joël" a écrit dans le message de news:
boinnp$u5e$Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin: > _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifiquepuis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuitechoisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Re -
D'accord, j'ai été un peu rapide.
Si j'ai bien tout compris : !!!
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
'=========================================== > Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
'============================================= > Workbooks.OpenText Filename:=MonFichier, Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boiof4$s5s$Euh, et où et comment j'insère la mise en page ?
Cordialement
"Joël" a écrit dans le message de news:
boinnp$u5e$Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin: > > _xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1),
Array(109,
1),Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1),
Array(139,
1),Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").SelectRange("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifiquepuis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant
la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuitechoisisse le fichier à mettre en page. Une fois le fichier choisit,
la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Re -
D'accord, j'ai été un peu rapide.
Si j'ai bien tout compris : !!!
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
'=========================================== > Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
'============================================= > Workbooks.OpenText Filename:=MonFichier, Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boiof4$s5s$1@news-reader3.wanadoo.fr...
Euh, et où et comment j'insère la mise en page ?
Cordialement
"Joël" <joel@joelgarbe.fr> a écrit dans le message de news:
boinnp$u5e$1@news-reader5.wanadoo.fr...
Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boin8u$rcm$1@news-reader5.wanadoo.fr...
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin: > > _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1),
Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1),
Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant
la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit,
la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Re -
D'accord, j'ai été un peu rapide.
Si j'ai bien tout compris : !!!
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
'=========================================== > Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
'============================================= > Workbooks.OpenText Filename:=MonFichier, Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boiof4$s5s$Euh, et où et comment j'insère la mise en page ?
Cordialement
"Joël" a écrit dans le message de news:
boinnp$u5e$Bonjour,
Dim MonFichier As String
MonFichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If MonFichier = Faux Then
msgbos "Aucun Fichier Sélectionné"
Exit Sub
End If
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin: > > _xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1),
Array(109,
1),Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1),
Array(139,
1),Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").SelectRange("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifiquepuis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant
la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuitechoisisse le fichier à mettre en page. Une fois le fichier choisit,
la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Merci beaucoup pour cette réponse rapide et efficace.
Je vais pouvoir enfin bosser correctement
C'est pas facile le vba pour un débutant.
Faudrait peut être que j'achète un bouquin, l'aide d'excel est pas top je
trouve.
Y a t il un bon bouquin ?
Cordialement
OLS
Merci beaucoup pour cette réponse rapide et efficace.
Je vais pouvoir enfin bosser correctement
C'est pas facile le vba pour un débutant.
Faudrait peut être que j'achète un bouquin, l'aide d'excel est pas top je
trouve.
Y a t il un bon bouquin ?
Cordialement
OLS
Merci beaucoup pour cette réponse rapide et efficace.
Je vais pouvoir enfin bosser correctement
C'est pas facile le vba pour un débutant.
Faudrait peut être que j'achète un bouquin, l'aide d'excel est pas top je
trouve.
Y a t il un bon bouquin ?
Cordialement
OLS
Bonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boin8u$rcm$1@news-reader5.wanadoo.fr...
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109, 1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139, 1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172, 1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
Bonjour Joël,
Je voudrais ajouter quelques précisions :
Ton code ne marche pas chez moi, car dans les préférences de VBA,
je coche toujours "Déclaration explicite des variables".
J'obtiens donc un erreur de compilation (variable non définie),
à cause de faux qui n'a pas été déclaré.
Si j'enlève le "Option Explicit" en haut du module, le problème de
compil est résolu, car la variable "faux" est créée automatiquement.
Par contre le test ne fonctionne pas si l'utilisateur clique sur le bouton
"Annuler", car MonFichier est égal à "Faux", la chaine de caractères et
non le booléen, à cause de la déclaration comme String, tandis que faux,
la variable créée à la volée est vide, ce que tu peux vétifier avec l'ins-
truction :
Debug.Print "faux :" & faux & " - " & TypeName(faux)
Il faut donc remplacer
If MonFichier = Faux Then
par
If MonFichier = "Faux" Then
Dans ce cas, tout fonctionne, mais ... seulement avec les versions en
fran-
çais d'Excel. En effet, quand on clique sur "Annuler", GetOpenFilename
renvoie le booléen FAUX, converti en "Faux" avec une version française,
mais en "False" avec une version en anglais, "Falso", avec une version en
italien ...
C'est pourquoi je déconseille vivement de donner le type String à la
variable.
Avec le type Variant attribué par défaut, selon que l'utilisateur choisit
un
fichier ou le bouton "Annuler", le résultat est une chaine (String) ou un
booléen (Boolean). le booléen n'est pas converti en String et on peut
alors
faire le test :
If MonFichier = Faux Then
qui fonctionne avec toutes les versions d'Excel, quelle que soit la
langue.
Voici la version que je propose :
Sub ObtentionNom()
Dim DocChoisi
DocChoisi = Application.GetOpenFilename
If DocChoisi = False Then
' Code pour gérer le bouton Annuler.
End
Else
' Suite "normale" du code
End If
End Sub
avec, j'insiste :
Dim DocChoisi
ou
Dim DocChoisi as Variant
et non
Dim DocChoisi as StringBonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Joël,
Je voudrais ajouter quelques précisions :
Ton code ne marche pas chez moi, car dans les préférences de VBA,
je coche toujours "Déclaration explicite des variables".
J'obtiens donc un erreur de compilation (variable non définie),
à cause de faux qui n'a pas été déclaré.
Si j'enlève le "Option Explicit" en haut du module, le problème de
compil est résolu, car la variable "faux" est créée automatiquement.
Par contre le test ne fonctionne pas si l'utilisateur clique sur le bouton
"Annuler", car MonFichier est égal à "Faux", la chaine de caractères et
non le booléen, à cause de la déclaration comme String, tandis que faux,
la variable créée à la volée est vide, ce que tu peux vétifier avec l'ins-
truction :
Debug.Print "faux :" & faux & " - " & TypeName(faux)
Il faut donc remplacer
If MonFichier = Faux Then
par
If MonFichier = "Faux" Then
Dans ce cas, tout fonctionne, mais ... seulement avec les versions en
fran-
çais d'Excel. En effet, quand on clique sur "Annuler", GetOpenFilename
renvoie le booléen FAUX, converti en "Faux" avec une version française,
mais en "False" avec une version en anglais, "Falso", avec une version en
italien ...
C'est pourquoi je déconseille vivement de donner le type String à la
variable.
Avec le type Variant attribué par défaut, selon que l'utilisateur choisit
un
fichier ou le bouton "Annuler", le résultat est une chaine (String) ou un
booléen (Boolean). le booléen n'est pas converti en String et on peut
alors
faire le test :
If MonFichier = Faux Then
qui fonctionne avec toutes les versions d'Excel, quelle que soit la
langue.
Voici la version que je propose :
Sub ObtentionNom()
Dim DocChoisi
DocChoisi = Application.GetOpenFilename
If DocChoisi = False Then
' Code pour gérer le bouton Annuler.
End
Else
' Suite "normale" du code
End If
End Sub
avec, j'insiste :
Dim DocChoisi
ou
Dim DocChoisi as Variant
et non
Dim DocChoisi as String
Bonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boin8u$rcm$1@news-reader5.wanadoo.fr...
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Joël,
Je voudrais ajouter quelques précisions :
Ton code ne marche pas chez moi, car dans les préférences de VBA,
je coche toujours "Déclaration explicite des variables".
J'obtiens donc un erreur de compilation (variable non définie),
à cause de faux qui n'a pas été déclaré.
Si j'enlève le "Option Explicit" en haut du module, le problème de
compil est résolu, car la variable "faux" est créée automatiquement.
Par contre le test ne fonctionne pas si l'utilisateur clique sur le bouton
"Annuler", car MonFichier est égal à "Faux", la chaine de caractères et
non le booléen, à cause de la déclaration comme String, tandis que faux,
la variable créée à la volée est vide, ce que tu peux vétifier avec l'ins-
truction :
Debug.Print "faux :" & faux & " - " & TypeName(faux)
Il faut donc remplacer
If MonFichier = Faux Then
par
If MonFichier = "Faux" Then
Dans ce cas, tout fonctionne, mais ... seulement avec les versions en
fran-
çais d'Excel. En effet, quand on clique sur "Annuler", GetOpenFilename
renvoie le booléen FAUX, converti en "Faux" avec une version française,
mais en "False" avec une version en anglais, "Falso", avec une version en
italien ...
C'est pourquoi je déconseille vivement de donner le type String à la
variable.
Avec le type Variant attribué par défaut, selon que l'utilisateur choisit
un
fichier ou le bouton "Annuler", le résultat est une chaine (String) ou un
booléen (Boolean). le booléen n'est pas converti en String et on peut
alors
faire le test :
If MonFichier = Faux Then
qui fonctionne avec toutes les versions d'Excel, quelle que soit la
langue.
Voici la version que je propose :
Sub ObtentionNom()
Dim DocChoisi
DocChoisi = Application.GetOpenFilename
If DocChoisi = False Then
' Code pour gérer le bouton Annuler.
End
Else
' Suite "normale" du code
End If
End Sub
avec, j'insiste :
Dim DocChoisi
ou
Dim DocChoisi as Variant
et non
Dim DocChoisi as StringBonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Michel !
Merci pour ces précisions...
C'est vrai que je ne teste pas toujours les routines que je propose dans
toutes leurs possibilités, faisant confiance à ma bonne étoile (et par
manque de temps souvant).
Mais bon, ça fait toujours avancer les demandeurs ;-)
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
www.joelgarbe.fr
(très petit contenu)
"Michel Gaboly" a écrit dans le message de news:Bonjour Joël,
Je voudrais ajouter quelques précisions :
Ton code ne marche pas chez moi, car dans les préférences de VBA,
je coche toujours "Déclaration explicite des variables".
J'obtiens donc un erreur de compilation (variable non définie),
à cause de faux qui n'a pas été déclaré.
Si j'enlève le "Option Explicit" en haut du module, le problème de
compil est résolu, car la variable "faux" est créée automatiquement.
Par contre le test ne fonctionne pas si l'utilisateur clique sur le bouton
"Annuler", car MonFichier est égal à "Faux", la chaine de caractères et
non le booléen, à cause de la déclaration comme String, tandis que faux,
la variable créée à la volée est vide, ce que tu peux vétifier avec l'ins-
truction :
Debug.Print "faux :" & faux & " - " & TypeName(faux)
Il faut donc remplacer
If MonFichier = Faux Then
par
If MonFichier = "Faux" Then
Dans ce cas, tout fonctionne, mais ... seulement avec les versions en
fran-çais d'Excel. En effet, quand on clique sur "Annuler", GetOpenFilename
renvoie le booléen FAUX, converti en "Faux" avec une version française,
mais en "False" avec une version en anglais, "Falso", avec une version en
italien ...
C'est pourquoi je déconseille vivement de donner le type String à la
variable.Avec le type Variant attribué par défaut, selon que l'utilisateur choisit
unfichier ou le bouton "Annuler", le résultat est une chaine (String) ou un
booléen (Boolean). le booléen n'est pas converti en String et on peut
alorsfaire le test :
If MonFichier = Faux Then
qui fonctionne avec toutes les versions d'Excel, quelle que soit la
langue.
Voici la version que je propose :
Sub ObtentionNom()
Dim DocChoisi
DocChoisi = Application.GetOpenFilename
If DocChoisi = False Then
' Code pour gérer le bouton Annuler.
End
Else
' Suite "normale" du code
End If
End Sub
avec, j'insiste :
Dim DocChoisi
ou
Dim DocChoisi as Variant
et non
Dim DocChoisi as StringBonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin:= _xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").SelectRange("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifiquepuis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuitechoisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Michel !
Merci pour ces précisions...
C'est vrai que je ne teste pas toujours les routines que je propose dans
toutes leurs possibilités, faisant confiance à ma bonne étoile (et par
manque de temps souvant).
Mais bon, ça fait toujours avancer les demandeurs ;-)
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
www.joelgarbe.fr
(très petit contenu)
"Michel Gaboly" <michel@Suppgaboly.com> a écrit dans le message de news:
3FAD09E0.2015628E@Suppgaboly.com...
Bonjour Joël,
Je voudrais ajouter quelques précisions :
Ton code ne marche pas chez moi, car dans les préférences de VBA,
je coche toujours "Déclaration explicite des variables".
J'obtiens donc un erreur de compilation (variable non définie),
à cause de faux qui n'a pas été déclaré.
Si j'enlève le "Option Explicit" en haut du module, le problème de
compil est résolu, car la variable "faux" est créée automatiquement.
Par contre le test ne fonctionne pas si l'utilisateur clique sur le bouton
"Annuler", car MonFichier est égal à "Faux", la chaine de caractères et
non le booléen, à cause de la déclaration comme String, tandis que faux,
la variable créée à la volée est vide, ce que tu peux vétifier avec l'ins-
truction :
Debug.Print "faux :" & faux & " - " & TypeName(faux)
Il faut donc remplacer
If MonFichier = Faux Then
par
If MonFichier = "Faux" Then
Dans ce cas, tout fonctionne, mais ... seulement avec les versions en
fran-
çais d'Excel. En effet, quand on clique sur "Annuler", GetOpenFilename
renvoie le booléen FAUX, converti en "Faux" avec une version française,
mais en "False" avec une version en anglais, "Falso", avec une version en
italien ...
C'est pourquoi je déconseille vivement de donner le type String à la
variable.
Avec le type Variant attribué par défaut, selon que l'utilisateur choisit
un
fichier ou le bouton "Annuler", le résultat est une chaine (String) ou un
booléen (Boolean). le booléen n'est pas converti en String et on peut
alors
faire le test :
If MonFichier = Faux Then
qui fonctionne avec toutes les versions d'Excel, quelle que soit la
langue.
Voici la version que je propose :
Sub ObtentionNom()
Dim DocChoisi
DocChoisi = Application.GetOpenFilename
If DocChoisi = False Then
' Code pour gérer le bouton Annuler.
End
Else
' Suite "normale" du code
End If
End Sub
avec, j'insiste :
Dim DocChoisi
ou
Dim DocChoisi as Variant
et non
Dim DocChoisi as String
Bonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
joel@joelgarbe.fr
"OLS" <olivier_ouradou@yahoo.com> a écrit dans le message de news:
boin8u$rcm$1@news-reader5.wanadoo.fr...
Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin:= _
xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,
_
1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,
1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),
Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),
Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),
Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").Select
Range("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifique
puis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuite
choisisse le fichier à mettre en page. Une fois le fichier choisit, la
mise
en page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Michel !
Merci pour ces précisions...
C'est vrai que je ne teste pas toujours les routines que je propose dans
toutes leurs possibilités, faisant confiance à ma bonne étoile (et par
manque de temps souvant).
Mais bon, ça fait toujours avancer les demandeurs ;-)
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
www.joelgarbe.fr
(très petit contenu)
"Michel Gaboly" a écrit dans le message de news:Bonjour Joël,
Je voudrais ajouter quelques précisions :
Ton code ne marche pas chez moi, car dans les préférences de VBA,
je coche toujours "Déclaration explicite des variables".
J'obtiens donc un erreur de compilation (variable non définie),
à cause de faux qui n'a pas été déclaré.
Si j'enlève le "Option Explicit" en haut du module, le problème de
compil est résolu, car la variable "faux" est créée automatiquement.
Par contre le test ne fonctionne pas si l'utilisateur clique sur le bouton
"Annuler", car MonFichier est égal à "Faux", la chaine de caractères et
non le booléen, à cause de la déclaration comme String, tandis que faux,
la variable créée à la volée est vide, ce que tu peux vétifier avec l'ins-
truction :
Debug.Print "faux :" & faux & " - " & TypeName(faux)
Il faut donc remplacer
If MonFichier = Faux Then
par
If MonFichier = "Faux" Then
Dans ce cas, tout fonctionne, mais ... seulement avec les versions en
fran-çais d'Excel. En effet, quand on clique sur "Annuler", GetOpenFilename
renvoie le booléen FAUX, converti en "Faux" avec une version française,
mais en "False" avec une version en anglais, "Falso", avec une version en
italien ...
C'est pourquoi je déconseille vivement de donner le type String à la
variable.Avec le type Variant attribué par défaut, selon que l'utilisateur choisit
unfichier ou le bouton "Annuler", le résultat est une chaine (String) ou un
booléen (Boolean). le booléen n'est pas converti en String et on peut
alorsfaire le test :
If MonFichier = Faux Then
qui fonctionne avec toutes les versions d'Excel, quelle que soit la
langue.
Voici la version que je propose :
Sub ObtentionNom()
Dim DocChoisi
DocChoisi = Application.GetOpenFilename
If DocChoisi = False Then
' Code pour gérer le bouton Annuler.
End
Else
' Suite "normale" du code
End If
End Sub
avec, j'insiste :
Dim DocChoisi
ou
Dim DocChoisi as Variant
et non
Dim DocChoisi as StringBonjour,
.
--
Bien Cordialement
Joël GARBE
+33 6 60 58 20 68
"OLS" a écrit dans le message de news:
boin8u$rcm$Bonjour à tous,
Voilà j'ai crée la macro suivante :
************************************************
Sub ouverture_fichier_avec_mise_en_page()
' ouverture du fichier et mise en page
ChDir "C:temp"
Workbooks.OpenText Filename:="C:temptest manquants.txt",
Origin:= _xlWindows, StartRow:=1, DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,_1), Array(1, 1), Array(28, 1), Array(29, 1), Array(58, 1),
Array(59,1), Array(68, 1), Array _
(69, 1), Array(74, 1), Array(75, 1), Array(108, 1), Array(109,
1),Array(118, 1), Array(119 _
, 1), Array(128, 1), Array(129, 1), Array(138, 1), Array(139,
1),Array(148, 1), Array(149, _
1), Array(158, 1), Array(159, 1), Array(171, 1), Array(172,
1),Array(197, 1), Array(198, 1 _
)), TrailingMinusNumbers:=True
Range("A:A,C:C,E:E,G:G,I:I,K:K,M:M,O:O,Q:Q,S:S,U:U,W:W,Y:Y").SelectRange("Y1").Activate
Selection.Delete Shift:=xlToLeft
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
Rows("1:3").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
ActiveCell.FormulaR1C1 = "RECAPITULATIF DES MANQUANTS MOBILIER"
Range("A1").Select
End Sub
***********************************
J'ouvre donc un fichier nommé testmanquants dans un répertoire
spécifiquepuis je le mets en page car c'est un .txt.
J'aimerai faire quelquechose de plus général à savoir qu'en lançant la
macro, la boite de dialogue "Ouvrir" s'ouvre et que l'utilisateur
ensuitechoisisse le fichier à mettre en page. Une fois le fichier choisit, la
miseen page s'effectue.
Merci pour vos réponses.
Codialement
--
OLS
--
Cordialement,
Michel Gaboly
http://www.gaboly.com