essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" a écrit dans le message de
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" a écrit dans le message de
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" a écrit dans le message de
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" a écrit dans le message de
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" a écrit dans le message de
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
essaie comme cecic :
With XL_Feuille
with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End with
Et avant de fermer l'instance d'excel que tu as créé par automation,
assure toi que tu as fermé tous les fichiers ouverts d'excel
Exemple : Si la variable représentant l'instance est Xl
For each Wk in Xl.workbookss
wk.close True ' true pour sauvegardes des modification
Next
xl.Quit
"Gilbert" a écrit dans le message de
Bonjour,
A partir d'une base Access, je remplis un fichier Excel par automation.
Tout se passe sans problème. Quand je ferme le fichier Excel, le process
bien supprimé.
Si j'ajoute de la mise en forme de la feuille comme
XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
ça fonctionne bien et je peux exécuter le traitement autant de fois que je
veux.
Par contre si j'utilise
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
ou même sans le With
XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
7)).Borders(xlInsideVertical).Weight = xlThin
la mise en forme se déroule correctement la première fois, mais le process
Excel ne disparait pas du gestionnaire de tâches après fermeture du
Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
suivantes
462 Le serveur distant n'existe pas ou n'est pas disponible
1004 Erreur définie par l'application ou par l'objet
J'avais déjà été confronté à ce problème et je l'avais contourné en
la mise en forme en lançant l'exécution d'un procédure située dans un
du fichier Excel.
Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
de code dans le fichier Excel.
Merci d'avance pour toutes vos idées
--
Cordialement,
Gilbert
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" a écrit dans le message de
uv$
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" a écrit dans le message de
news:
>
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
uv$f32TYJHA.1532@TK2MSFTNGP03.phx.gbl...
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:OqRQlmTYJHA.208@TK2MSFTNGP03.phx.gbl...
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
news:
> eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" a écrit dans le message de
uv$
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" a écrit dans le message de
news:
>
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" a écrit dans le message de
uv$
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" a écrit dans le message de
news:
>
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
uv$f32TYJHA.1532@TK2MSFTNGP03.phx.gbl...
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:OqRQlmTYJHA.208@TK2MSFTNGP03.phx.gbl...
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
news:
> eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" a écrit dans le message de
uv$
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" a écrit dans le message de
news:
>
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
C'est exactement ce que je t'ai écrit dans mon premier message !
Surprenant... tu m'as répondu que cela ne fonctionnait pas !!!
"Gilbert" a écrit dans le message de
news:
XL_Feuille est bien une feuille du classeur actif
Ma feuille n'est pas protégée
et ça ne fonctionne pas.
Enfin ça fonctionne le premier coup, mais le process Excel ne disparait
pas
quand je ferme le classeur et donc au 2ème essai ça plante.
J'ai trouvé ça sur le forum US d'Access
If you reference any Excel methods or properties by reference instead of
explicitly, such as Selection, ActiveCell, ActiveWorkbook, etc., instead
of
your objWB.ActiveCell etc. then Access will hold the reference open until
Access closes. To make sure that everything closes when you want it to,
make
sure to EXPLICITLY reference the item.
J'ai donc remplacé
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
par
With XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
XL_Feuille.Cells(NumLigne, 7))
afin de référencer explicitement les objets Cells
Et CA MARCHE!!
Encore merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:%Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" a écrit dans le message de
news:uv$
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" a écrit dans le message de
news:
>
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le
> process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
je> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
process> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
C'est exactement ce que je t'ai écrit dans mon premier message !
Surprenant... tu m'as répondu que cela ne fonctionnait pas !!!
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
news:
eSH0sPUYJHA.4424@TK2MSFTNGP05.phx.gbl...
XL_Feuille est bien une feuille du classeur actif
Ma feuille n'est pas protégée
et ça ne fonctionne pas.
Enfin ça fonctionne le premier coup, mais le process Excel ne disparait
pas
quand je ferme le classeur et donc au 2ème essai ça plante.
J'ai trouvé ça sur le forum US d'Access
If you reference any Excel methods or properties by reference instead of
explicitly, such as Selection, ActiveCell, ActiveWorkbook, etc., instead
of
your objWB.ActiveCell etc. then Access will hold the reference open until
Access closes. To make sure that everything closes when you want it to,
make
sure to EXPLICITLY reference the item.
J'ai donc remplacé
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
par
With XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
XL_Feuille.Cells(NumLigne, 7))
afin de référencer explicitement les objets Cells
Et CA MARCHE!!
Encore merci
--
Cordialement,
Gilbert
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:%23L0nVEUYJHA.1272@TK2MSFTNGP04.phx.gbl...
Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
news:
uv$f32TYJHA.1532@TK2MSFTNGP03.phx.gbl...
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:OqRQlmTYJHA.208@TK2MSFTNGP03.phx.gbl...
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
news:
> eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le
> process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
je
> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
process
> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
C'est exactement ce que je t'ai écrit dans mon premier message !
Surprenant... tu m'as répondu que cela ne fonctionnait pas !!!
"Gilbert" a écrit dans le message de
news:
XL_Feuille est bien une feuille du classeur actif
Ma feuille n'est pas protégée
et ça ne fonctionne pas.
Enfin ça fonctionne le premier coup, mais le process Excel ne disparait
pas
quand je ferme le classeur et donc au 2ème essai ça plante.
J'ai trouvé ça sur le forum US d'Access
If you reference any Excel methods or properties by reference instead of
explicitly, such as Selection, ActiveCell, ActiveWorkbook, etc., instead
of
your objWB.ActiveCell etc. then Access will hold the reference open until
Access closes. To make sure that everything closes when you want it to,
make
sure to EXPLICITLY reference the item.
J'ai donc remplacé
With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
par
With XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
XL_Feuille.Cells(NumLigne, 7))
afin de référencer explicitement les objets Cells
Et CA MARCHE!!
Encore merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:%Si XL_Feuille est une feuille du classeur actif
ce qui suit fonctionne sauf si ta feuille est protégée
Cette ligne de code va ajouter une bordure sur la ligne
du bas de la plage de cellules.
With XL_Feuille
With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
.Borders(xlEdgeBottom).Weight = xlMedium
.Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
"Gilbert" a écrit dans le message de
news:uv$
Merci de ta réponse rapide.
Le résultat est le même.
En fait c'est le Range qui pose problème
Si je commente les ligne comme ça
With XL_Feuille
With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
' .Borders(xlEdgeBottom).Weight = xlMedium
' .Borders(xlEdgeLeft).Weight = xlMedium
End With
End With
c'est pareil
Existe-t-il un autre objet que Range pour travailler sur une plage de
cellules?
Ou un autre moyen de faire des bordures et autres mises en forme?
Merci
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de
news:
> essaie comme cecic :
>
> With XL_Feuille
> with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
> End with
>
> Et avant de fermer l'instance d'excel que tu as créé par automation,
> assure toi que tu as fermé tous les fichiers ouverts d'excel
>
> Exemple : Si la variable représentant l'instance est Xl
>
> For each Wk in Xl.workbookss
> wk.close True ' true pour sauvegardes des modification
> Next
> xl.Quit
>
>
>
> "Gilbert" a écrit dans le message de
news:
>
> Bonjour,
>
> A partir d'une base Access, je remplis un fichier Excel par automation.
> Tout se passe sans problème. Quand je ferme le fichier Excel, le
> process
est
> bien supprimé.
>
> Si j'ajoute de la mise en forme de la feuille comme
> XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
> XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
> ça fonctionne bien et je peux exécuter le traitement autant de fois que
je> veux.
>
> Par contre si j'utilise
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7))
> .Borders(xlEdgeBottom).Weight = xlMedium
> .Borders(xlEdgeLeft).Weight = xlMedium
> End With
>
> ou même sans le With
> XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
> 7)).Borders(xlInsideVertical).Weight = xlThin
>
> la mise en forme se déroule correctement la première fois, mais le
process> Excel ne disparait pas du gestionnaire de tâches après fermeture du
fichier.
> Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
> suivantes
>
> 462 Le serveur distant n'existe pas ou n'est pas disponible
> 1004 Erreur définie par l'application ou par l'objet
>
> J'avais déjà été confronté à ce problème et je l'avais contourné en
faisant
> la mise en forme en lançant l'exécution d'un procédure située dans un
module
> du fichier Excel.
> Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
avoir
> de code dans le fichier Excel.
>
> Merci d'avance pour toutes vos idées
>
> --
> Cordialement,
>
> Gilbert
>
>
>
Bonjour,
Je suis d'accord avec toi, mais il semble qu'il y ait une différence de
fonctionnement entre
XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
XL_Feuille.Cells(NumLigne, 7))
et
With XL_Feuille
.Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
Je retesterai ce soir, peut-être me suis-je trompé hier après ta 1ère
réponse.
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de news:
> C'est exactement ce que je t'ai écrit dans mon premier message !
>
> Surprenant... tu m'as répondu que cela ne fonctionnait pas !!!
>
>
>
>
> "Gilbert" a écrit dans le message de
> news:
>
> XL_Feuille est bien une feuille du classeur actif
> Ma feuille n'est pas protégée
> et ça ne fonctionne pas.
> Enfin ça fonctionne le premier coup, mais le process Excel ne disparait
> pas
> quand je ferme le classeur et donc au 2ème essai ça plante.
>
> J'ai trouvé ça sur le forum US d'Access
> If you reference any Excel methods or properties by reference instead of
> explicitly, such as Selection, ActiveCell, ActiveWorkbook, etc., instead
> of
> your objWB.ActiveCell etc. then Access will hold the reference open
> Access closes. To make sure that everything closes when you want it to,
> make
> sure to EXPLICITLY reference the item.
>
> J'ai donc remplacé
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> par
> With XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
> XL_Feuille.Cells(NumLigne, 7))
>
> afin de référencer explicitement les objets Cells
>
> Et CA MARCHE!!
>
> Encore merci
>
> --
> Cordialement,
>
> Gilbert
>
>
> "michdenis" a écrit dans le message de
> news:%
>> Si XL_Feuille est une feuille du classeur actif
>> ce qui suit fonctionne sauf si ta feuille est protégée
>>
>> Cette ligne de code va ajouter une bordure sur la ligne
>> du bas de la plage de cellules.
>>
>> With XL_Feuille
>> With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
>> .Borders(xlEdgeBottom).Weight = xlMedium
>> .Borders(xlEdgeLeft).Weight = xlMedium
>> End With
>> End With
>>
>>
>>
>>
>>
>> "Gilbert" a écrit dans le message de
> news:
>> uv$
>> Merci de ta réponse rapide.
>>
>> Le résultat est le même.
>> En fait c'est le Range qui pose problème
>> Si je commente les ligne comme ça
>> With XL_Feuille
>> With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
>> ' .Borders(xlEdgeBottom).Weight = xlMedium
>> ' .Borders(xlEdgeLeft).Weight = xlMedium
>> End With
>> End With
>> c'est pareil
>>
>> Existe-t-il un autre objet que Range pour travailler sur une plage de
>> cellules?
>> Ou un autre moyen de faire des bordures et autres mises en forme?
>>
>> Merci
>> --
>> Cordialement,
>>
>> Gilbert
>>
>>
>> "michdenis" a écrit dans le message de
>> news:
>> > essaie comme cecic :
>> >
>> > With XL_Feuille
>> > with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
>> > .Borders(xlEdgeBottom).Weight = xlMedium
>> > .Borders(xlEdgeLeft).Weight = xlMedium
>> > End With
>> > End with
>> >
>> > Et avant de fermer l'instance d'excel que tu as créé par automation,
>> > assure toi que tu as fermé tous les fichiers ouverts d'excel
>> >
>> > Exemple : Si la variable représentant l'instance est Xl
>> >
>> > For each Wk in Xl.workbookss
>> > wk.close True ' true pour sauvegardes des modification
>> > Next
>> > xl.Quit
>> >
>> >
>> >
>> > "Gilbert" a écrit dans le message
>> news:
>> >
>> > Bonjour,
>> >
>> > A partir d'une base Access, je remplis un fichier Excel par
>> > Tout se passe sans problème. Quand je ferme le fichier Excel, le
>> > process
>> est
>> > bien supprimé.
>> >
>> > Si j'ajoute de la mise en forme de la feuille comme
>> > XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
>> > XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
>> > ça fonctionne bien et je peux exécuter le traitement autant de fois
> je
>> > veux.
>> >
>> > Par contre si j'utilise
>> > With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
>> > 7))
>> > .Borders(xlEdgeBottom).Weight = xlMedium
>> > .Borders(xlEdgeLeft).Weight = xlMedium
>> > End With
>> >
>> > ou même sans le With
>> > XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
>> > 7)).Borders(xlInsideVertical).Weight = xlThin
>> >
>> > la mise en forme se déroule correctement la première fois, mais le
> process
>> > Excel ne disparait pas du gestionnaire de tâches après fermeture du
>> fichier.
>> > Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
>> > suivantes
>> >
>> > 462 Le serveur distant n'existe pas ou n'est pas disponible
>> > 1004 Erreur définie par l'application ou par l'objet
>> >
>> > J'avais déjà été confronté à ce problème et je l'avais contourné en
>> faisant
>> > la mise en forme en lançant l'exécution d'un procédure située dans un
>> module
>> > du fichier Excel.
>> > Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
>> avoir
>> > de code dans le fichier Excel.
>> >
>> > Merci d'avance pour toutes vos idées
>> >
>> > --
>> > Cordialement,
>> >
>> > Gilbert
>> >
>> >
>> >
>>
>>
>
>
>
Bonjour,
Je suis d'accord avec toi, mais il semble qu'il y ait une différence de
fonctionnement entre
XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
XL_Feuille.Cells(NumLigne, 7))
et
With XL_Feuille
.Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
Je retesterai ce soir, peut-être me suis-je trompé hier après ta 1ère
réponse.
--
Cordialement,
Gilbert
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
ePIru0WYJHA.4424@TK2MSFTNGP05.phx.gbl...
> C'est exactement ce que je t'ai écrit dans mon premier message !
>
> Surprenant... tu m'as répondu que cela ne fonctionnait pas !!!
>
>
>
>
> "Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
> news:
> eSH0sPUYJHA.4424@TK2MSFTNGP05.phx.gbl...
> XL_Feuille est bien une feuille du classeur actif
> Ma feuille n'est pas protégée
> et ça ne fonctionne pas.
> Enfin ça fonctionne le premier coup, mais le process Excel ne disparait
> pas
> quand je ferme le classeur et donc au 2ème essai ça plante.
>
> J'ai trouvé ça sur le forum US d'Access
> If you reference any Excel methods or properties by reference instead of
> explicitly, such as Selection, ActiveCell, ActiveWorkbook, etc., instead
> of
> your objWB.ActiveCell etc. then Access will hold the reference open
> Access closes. To make sure that everything closes when you want it to,
> make
> sure to EXPLICITLY reference the item.
>
> J'ai donc remplacé
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> par
> With XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
> XL_Feuille.Cells(NumLigne, 7))
>
> afin de référencer explicitement les objets Cells
>
> Et CA MARCHE!!
>
> Encore merci
>
> --
> Cordialement,
>
> Gilbert
>
>
> "michdenis" <michdenis@hotmail.com> a écrit dans le message de
> news:%23L0nVEUYJHA.1272@TK2MSFTNGP04.phx.gbl...
>> Si XL_Feuille est une feuille du classeur actif
>> ce qui suit fonctionne sauf si ta feuille est protégée
>>
>> Cette ligne de code va ajouter une bordure sur la ligne
>> du bas de la plage de cellules.
>>
>> With XL_Feuille
>> With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
>> .Borders(xlEdgeBottom).Weight = xlMedium
>> .Borders(xlEdgeLeft).Weight = xlMedium
>> End With
>> End With
>>
>>
>>
>>
>>
>> "Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message de
> news:
>> uv$f32TYJHA.1532@TK2MSFTNGP03.phx.gbl...
>> Merci de ta réponse rapide.
>>
>> Le résultat est le même.
>> En fait c'est le Range qui pose problème
>> Si je commente les ligne comme ça
>> With XL_Feuille
>> With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
>> ' .Borders(xlEdgeBottom).Weight = xlMedium
>> ' .Borders(xlEdgeLeft).Weight = xlMedium
>> End With
>> End With
>> c'est pareil
>>
>> Existe-t-il un autre objet que Range pour travailler sur une plage de
>> cellules?
>> Ou un autre moyen de faire des bordures et autres mises en forme?
>>
>> Merci
>> --
>> Cordialement,
>>
>> Gilbert
>>
>>
>> "michdenis" <michdenis@hotmail.com> a écrit dans le message de
>> news:OqRQlmTYJHA.208@TK2MSFTNGP03.phx.gbl...
>> > essaie comme cecic :
>> >
>> > With XL_Feuille
>> > with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
>> > .Borders(xlEdgeBottom).Weight = xlMedium
>> > .Borders(xlEdgeLeft).Weight = xlMedium
>> > End With
>> > End with
>> >
>> > Et avant de fermer l'instance d'excel que tu as créé par automation,
>> > assure toi que tu as fermé tous les fichiers ouverts d'excel
>> >
>> > Exemple : Si la variable représentant l'instance est Xl
>> >
>> > For each Wk in Xl.workbookss
>> > wk.close True ' true pour sauvegardes des modification
>> > Next
>> > xl.Quit
>> >
>> >
>> >
>> > "Gilbert" <ZZZgilbertvie@NOSPAMlaposte.net> a écrit dans le message
>> news:
>> > eUblleTYJHA.4852@TK2MSFTNGP04.phx.gbl...
>> > Bonjour,
>> >
>> > A partir d'une base Access, je remplis un fichier Excel par
>> > Tout se passe sans problème. Quand je ferme le fichier Excel, le
>> > process
>> est
>> > bien supprimé.
>> >
>> > Si j'ajoute de la mise en forme de la feuille comme
>> > XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
>> > XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
>> > ça fonctionne bien et je peux exécuter le traitement autant de fois
> je
>> > veux.
>> >
>> > Par contre si j'utilise
>> > With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
>> > 7))
>> > .Borders(xlEdgeBottom).Weight = xlMedium
>> > .Borders(xlEdgeLeft).Weight = xlMedium
>> > End With
>> >
>> > ou même sans le With
>> > XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
>> > 7)).Borders(xlInsideVertical).Weight = xlThin
>> >
>> > la mise en forme se déroule correctement la première fois, mais le
> process
>> > Excel ne disparait pas du gestionnaire de tâches après fermeture du
>> fichier.
>> > Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
>> > suivantes
>> >
>> > 462 Le serveur distant n'existe pas ou n'est pas disponible
>> > 1004 Erreur définie par l'application ou par l'objet
>> >
>> > J'avais déjà été confronté à ce problème et je l'avais contourné en
>> faisant
>> > la mise en forme en lançant l'exécution d'un procédure située dans un
>> module
>> > du fichier Excel.
>> > Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
>> avoir
>> > de code dans le fichier Excel.
>> >
>> > Merci d'avance pour toutes vos idées
>> >
>> > --
>> > Cordialement,
>> >
>> > Gilbert
>> >
>> >
>> >
>>
>>
>
>
>
Bonjour,
Je suis d'accord avec toi, mais il semble qu'il y ait une différence de
fonctionnement entre
XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
XL_Feuille.Cells(NumLigne, 7))
et
With XL_Feuille
.Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
Je retesterai ce soir, peut-être me suis-je trompé hier après ta 1ère
réponse.
--
Cordialement,
Gilbert
"michdenis" a écrit dans le message de news:
> C'est exactement ce que je t'ai écrit dans mon premier message !
>
> Surprenant... tu m'as répondu que cela ne fonctionnait pas !!!
>
>
>
>
> "Gilbert" a écrit dans le message de
> news:
>
> XL_Feuille est bien une feuille du classeur actif
> Ma feuille n'est pas protégée
> et ça ne fonctionne pas.
> Enfin ça fonctionne le premier coup, mais le process Excel ne disparait
> pas
> quand je ferme le classeur et donc au 2ème essai ça plante.
>
> J'ai trouvé ça sur le forum US d'Access
> If you reference any Excel methods or properties by reference instead of
> explicitly, such as Selection, ActiveCell, ActiveWorkbook, etc., instead
> of
> your objWB.ActiveCell etc. then Access will hold the reference open
> Access closes. To make sure that everything closes when you want it to,
> make
> sure to EXPLICITLY reference the item.
>
> J'ai donc remplacé
> With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
> par
> With XL_Feuille.Range(XL_Feuille.Cells(NumLigneTmp, 1),
> XL_Feuille.Cells(NumLigne, 7))
>
> afin de référencer explicitement les objets Cells
>
> Et CA MARCHE!!
>
> Encore merci
>
> --
> Cordialement,
>
> Gilbert
>
>
> "michdenis" a écrit dans le message de
> news:%
>> Si XL_Feuille est une feuille du classeur actif
>> ce qui suit fonctionne sauf si ta feuille est protégée
>>
>> Cette ligne de code va ajouter une bordure sur la ligne
>> du bas de la plage de cellules.
>>
>> With XL_Feuille
>> With .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
>> .Borders(xlEdgeBottom).Weight = xlMedium
>> .Borders(xlEdgeLeft).Weight = xlMedium
>> End With
>> End With
>>
>>
>>
>>
>>
>> "Gilbert" a écrit dans le message de
> news:
>> uv$
>> Merci de ta réponse rapide.
>>
>> Le résultat est le même.
>> En fait c'est le Range qui pose problème
>> Si je commente les ligne comme ça
>> With XL_Feuille
>> With .Range(Cells(NumLigneTmp, 1), Cells(NumLigne, 7))
>> ' .Borders(xlEdgeBottom).Weight = xlMedium
>> ' .Borders(xlEdgeLeft).Weight = xlMedium
>> End With
>> End With
>> c'est pareil
>>
>> Existe-t-il un autre objet que Range pour travailler sur une plage de
>> cellules?
>> Ou un autre moyen de faire des bordures et autres mises en forme?
>>
>> Merci
>> --
>> Cordialement,
>>
>> Gilbert
>>
>>
>> "michdenis" a écrit dans le message de
>> news:
>> > essaie comme cecic :
>> >
>> > With XL_Feuille
>> > with .Range(.Cells(NumLigneTmp, 1), .Cells(NumLigne, 7))
>> > .Borders(xlEdgeBottom).Weight = xlMedium
>> > .Borders(xlEdgeLeft).Weight = xlMedium
>> > End With
>> > End with
>> >
>> > Et avant de fermer l'instance d'excel que tu as créé par automation,
>> > assure toi que tu as fermé tous les fichiers ouverts d'excel
>> >
>> > Exemple : Si la variable représentant l'instance est Xl
>> >
>> > For each Wk in Xl.workbookss
>> > wk.close True ' true pour sauvegardes des modification
>> > Next
>> > xl.Quit
>> >
>> >
>> >
>> > "Gilbert" a écrit dans le message
>> news:
>> >
>> > Bonjour,
>> >
>> > A partir d'une base Access, je remplis un fichier Excel par
>> > Tout se passe sans problème. Quand je ferme le fichier Excel, le
>> > process
>> est
>> > bien supprimé.
>> >
>> > Si j'ajoute de la mise en forme de la feuille comme
>> > XL_Feuille.Cells(NumLigne, 2).Font.Bold = True
>> > XL_Feuille.Cells(NumLigne, 2).HorizontalAlignment = xlLeft
>> > ça fonctionne bien et je peux exécuter le traitement autant de fois
> je
>> > veux.
>> >
>> > Par contre si j'utilise
>> > With XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
>> > 7))
>> > .Borders(xlEdgeBottom).Weight = xlMedium
>> > .Borders(xlEdgeLeft).Weight = xlMedium
>> > End With
>> >
>> > ou même sans le With
>> > XL_Feuille.Range(Cells(NumLigneTmp, 1), Cells(NumLigne,
>> > 7)).Borders(xlInsideVertical).Weight = xlThin
>> >
>> > la mise en forme se déroule correctement la première fois, mais le
> process
>> > Excel ne disparait pas du gestionnaire de tâches après fermeture du
>> fichier.
>> > Et lorsque je veux relancer le traitement, j'obtiens une des erreurs
>> > suivantes
>> >
>> > 462 Le serveur distant n'existe pas ou n'est pas disponible
>> > 1004 Erreur définie par l'application ou par l'objet
>> >
>> > J'avais déjà été confronté à ce problème et je l'avais contourné en
>> faisant
>> > la mise en forme en lançant l'exécution d'un procédure située dans un
>> module
>> > du fichier Excel.
>> > Mais j'aimerais pouvoir le résoudre et tout faire depuis Access, sans
>> avoir
>> > de code dans le fichier Excel.
>> >
>> > Merci d'avance pour toutes vos idées
>> >
>> > --
>> > Cordialement,
>> >
>> > Gilbert
>> >
>> >
>> >
>>
>>
>
>
>