Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Hello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." a écrit dans le message de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Hello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." <FranckG@discussions.microsoft.com> a écrit dans le message de
news: C4989FE3-AB39-4E91-A93A-6D9844F71CAE@microsoft.com...
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Hello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." a écrit dans le message de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour Paul et merci de repondre aussi vite
J'ai regarder un peu dans l'aide mais je ne trouve rien concernant la
tempo,peux tu m'aiguiller SVP
MerciHello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de
temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion
n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." a écrit dans le message
de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la
feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne
rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays =
'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour Paul et merci de repondre aussi vite
J'ai regarder un peu dans l'aide mais je ne trouve rien concernant la
tempo,peux tu m'aiguiller SVP
Merci
Hello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de
temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion
n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." <FranckG@discussions.microsoft.com> a écrit dans le message
de
news: C4989FE3-AB39-4E91-A93A-6D9844F71CAE@microsoft.com...
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la
feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne
rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays =
'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour Paul et merci de repondre aussi vite
J'ai regarder un peu dans l'aide mais je ne trouve rien concernant la
tempo,peux tu m'aiguiller SVP
MerciHello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de
temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion
n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." a écrit dans le message
de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la
feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne
rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays =
'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Hello Franck,
Il y a bien longtemps que j'ai plus fait ce genre de chose ;-)
Essaye d'abord de cloturer ta connexion avec
set connstring = nothing
Normalement, cela devrait resoudre ton problème.
A+
Paul V
"Franck G." a écrit dans le message de
news:Bonjour Paul et merci de repondre aussi vite
J'ai regarder un peu dans l'aide mais je ne trouve rien concernant la
tempo,peux tu m'aiguiller SVP
MerciHello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de
temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion
n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." a écrit dans le message
de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la
feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne
rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays =
'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Hello Franck,
Il y a bien longtemps que j'ai plus fait ce genre de chose ;-)
Essaye d'abord de cloturer ta connexion avec
set connstring = nothing
Normalement, cela devrait resoudre ton problème.
A+
Paul V
"Franck G." <FranckG@discussions.microsoft.com> a écrit dans le message de
news: 0B0C8BE5-522D-45F9-9FEB-0E0DE03F3F59@microsoft.com...
Bonjour Paul et merci de repondre aussi vite
J'ai regarder un peu dans l'aide mais je ne trouve rien concernant la
tempo,peux tu m'aiguiller SVP
Merci
Hello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de
temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion
n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." <FranckG@discussions.microsoft.com> a écrit dans le message
de
news: C4989FE3-AB39-4E91-A93A-6D9844F71CAE@microsoft.com...
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la
feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne
rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays =
'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Hello Franck,
Il y a bien longtemps que j'ai plus fait ce genre de chose ;-)
Essaye d'abord de cloturer ta connexion avec
set connstring = nothing
Normalement, cela devrait resoudre ton problème.
A+
Paul V
"Franck G." a écrit dans le message de
news:Bonjour Paul et merci de repondre aussi vite
J'ai regarder un peu dans l'aide mais je ne trouve rien concernant la
tempo,peux tu m'aiguiller SVP
MerciHello Franck,
Sans pouvoir tester, je pense qu'il s'agit d'un problème de
temporisation.
Ton instruction de suppression est déjà traitée alors que la connexion
n'est
pas close.
Il faudrait tester en mettant un temps d'attente après la fermeture de ta
connexion (que je ne vois pas dans ton code ;-) )
HTH
Paul V
"Franck G." a écrit dans le message
de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la
feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne
rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays =
'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Re Frank,
J'imagine que tu as testé ton instruction de suppression at qu'elle est
correcte ;-)
Il faudrait tester si c'est l'execution de la connexion qui bloque ta
suppression ou si c'est autre chose.
J'ai le sentiment que la suppression se fait avant la fin de la connexion et
que dès lors ta connexion réincrit la première ligne après.
Je te suggere donc de commencer par mettre un temps d'attente avant
l'execution de la suppression.
Par exemple sous forme de boucle vide
For i = 1 to 100000000
next i
Ceci devrait permettre à ta connexion de terminer son boulot.
Tu change la valeur en fionction de la durée de ta connexion.
Tu pourrais aussi insérer un message pour voir si toute instruction est
bloquée ou si c'est uniquement la suppression.
Tiens moi au courant
A+
Paul V
"Franck G." a écrit dans le message de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Re Frank,
J'imagine que tu as testé ton instruction de suppression at qu'elle est
correcte ;-)
Il faudrait tester si c'est l'execution de la connexion qui bloque ta
suppression ou si c'est autre chose.
J'ai le sentiment que la suppression se fait avant la fin de la connexion et
que dès lors ta connexion réincrit la première ligne après.
Je te suggere donc de commencer par mettre un temps d'attente avant
l'execution de la suppression.
Par exemple sous forme de boucle vide
For i = 1 to 100000000
next i
Ceci devrait permettre à ta connexion de terminer son boulot.
Tu change la valeur en fionction de la durée de ta connexion.
Tu pourrais aussi insérer un message pour voir si toute instruction est
bloquée ou si c'est uniquement la suppression.
Tiens moi au courant
A+
Paul V
"Franck G." <FranckG@discussions.microsoft.com> a écrit dans le message de
news: C4989FE3-AB39-4E91-A93A-6D9844F71CAE@microsoft.com...
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Re Frank,
J'imagine que tu as testé ton instruction de suppression at qu'elle est
correcte ;-)
Il faudrait tester si c'est l'execution de la connexion qui bloque ta
suppression ou si c'est autre chose.
J'ai le sentiment que la suppression se fait avant la fin de la connexion et
que dès lors ta connexion réincrit la première ligne après.
Je te suggere donc de commencer par mettre un temps d'attente avant
l'execution de la suppression.
Par exemple sous forme de boucle vide
For i = 1 to 100000000
next i
Ceci devrait permettre à ta connexion de terminer son boulot.
Tu change la valeur en fionction de la durée de ta connexion.
Tu pourrais aussi insérer un message pour voir si toute instruction est
bloquée ou si c'est uniquement la suppression.
Tiens moi au courant
A+
Paul V
"Franck G." a écrit dans le message de
news:Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE' AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE' AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE' AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Re-bonjour Paul,
Pour faire suite à mon message précédent, un peu j'en ai marre d'excel ;)
Je viens de trouver la solution (j'ai quand même persévérer...et cela à
porter ses fruits)
c'était bien le petit bout de code cité au message précedent, il manquait
une petite chose. """BackgroundQuery:úlse"""
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh BackgroundQuery:úlse
End With
Voilà, si cela t'intéresse !
Merci pour tout
A+Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien
y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Re-bonjour Paul,
Pour faire suite à mon message précédent, un peu j'en ai marre d'excel ;)
Je viens de trouver la solution (j'ai quand même persévérer...et cela à
porter ses fruits)
c'était bien le petit bout de code cité au message précedent, il manquait
une petite chose. """BackgroundQuery:úlse"""
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh BackgroundQuery:úlse
End With
Voilà, si cela t'intéresse !
Merci pour tout
A+
Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien
y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////
Re-bonjour Paul,
Pour faire suite à mon message précédent, un peu j'en ai marre d'excel ;)
Je viens de trouver la solution (j'ai quand même persévérer...et cela à
porter ses fruits)
c'était bien le petit bout de code cité au message précedent, il manquait
une petite chose. """BackgroundQuery:úlse"""
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh BackgroundQuery:úlse
End With
Voilà, si cela t'intéresse !
Merci pour tout
A+Bonjour,
Pouvez-vous m'aider svp, je m'en sort pas.
Voici ce que je fais :
J'ai 2 feuilles nommé FRANCE et EXPORT DANS UN CLASSEUR
Je remplis la feuille France et Export en récupérant les données depuis
sql
via la procedure "FRANCE_EXPORT" plus bas dans le message.
Le remplissage ce fais bien sur mes deux feuilles, en activant la feuille
au
moment voulu.
par contre, comme je veux pas afficher les titres récupérer depuis la
requete sql, je les laisse à blancs.
Ce qui provoque une ligne vide dans excel(c voulu et apparement pas le
choix)
Donc j'essai de la supprimer après chaque remplissage d'une feuille
mais cela ne fonctionne pas.
Par contre si je crée une procédure "SupprimerligneVide", et que je la
lance manuellement apres avoir cliquer sur une des deux feuille cela
fonctionne.
Alors je comprends pas pourquoi, si je la mais dans ma procedure
FRANCE_EXPORT cela ne fonctionne pas.
Meme si je lance la procédure "SupprimerligneVide", juste après la
premiere
procedure de remplissage cela ne fonctionne pas non plus.
J'ai beau activer les feuilles dans le code de suppression de ligne rien
y
fais
Petit code que j'ai tester apres chaque END WITH de la procedure
FRANCE_EXPORT
Range("A4:S4").Select
Selection.Delete Shift:=xlUp
mais soit ça me bloque le remplissage de la feuille FRANCE ou EXPORT
mais
dans les deux cas aucune ligne supprimé.
Pouvez-vous m'aider SVP
////DEBUT///////
Sub FRANCE_EXPORT()
Dim qt As QueryTable
Dim datd As String
datd = Format(Cells(3, 1), "yyyy-mm-dd")
sqlstring = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ' , ................... WHERE CLI.Pays = 'FRANCE'
AND
FAVE.DATEFACTURATION = {d '" + datd + "'}"
sqlstring1 = " SELECT CLI.Pays AS ' ' , FAVE.CodeClient as ' ',
FAVE.Representant as ' ',..............WHERE CLI.Pays = 'EXPORT' and
FAVE.DATEFACTURATION = {d '" + datd + "'}"
connstring = _
"ODBC;DSN=coucou;UID=coucou;PWD=coucou"
Worksheets("FRANCE").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring)
.Refresh
End With
Worksheets("EXPORT").Activate
If ActiveSheet.QueryTables.Count > 0 Then
ActiveSheet.QueryTables(1).Delete
End If
ActiveSheet.Range("A4:S65000").Clear
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
Destination:=Range("A4:S65000"), Sql:=sqlstring1)
.Refresh
End With
End Sub
////////FIN/////////////////////