IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Paramètres bas de pages [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour a vous

    dans mon fichier j'ai créer 2 feuilles pour le paramètre de bas de feuille mais je ne sais pas comment le faire venir en bas de ma feuille commande quand elle est remplie mais je ne sais pas a l'avance a quelle ligne la feuille commande est remplie peut être qu'avec
    derlig
    cela marcherai??
    donc j'ai une feuille pour le bas de page devis et une autre pour la facture
    le bas de page devis(nom de feuille) est pris en A1:I12
    le bas de page facture(nom de feuille) est pris en A1:I14
    et aussi que les formules de calculs soit automatisés
    s'il vous faut un exemple pas souci majeur

    merci par avance

    Pascal

    bonjour a vous
    voici ce que j'ai essayer sans succès
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim destination As Variant
      Set Sh = Worksheets("Commande")
      Worksheets("bas de page devis").Range("a1:I12").Copy
       destination = Sh.Range("A" & DerLig + 1)
    ne sachant déjà pas si la variable destination est bien adressé
    j'ai un bug a surtout a
    =
    et si je mets
    destination:
    comme je le trouve dans l'aide(F1) ce n'est pas mieux

    pourquoi ai-je un vote négatif?

    Pascal

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 166
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je ne sais pas la raison de ton vote négatif mais c'est probablement dû au fait que ton explication est incompréhensible.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour Philippe et a vous tous
    donc je rectifie au cas où
    j'ai mon fichier qui reçois ses données en bloc en feuille "commande" par le biais d'une listview et comme je ne sais pas a l'avance ou se termine les inscription de données, je me suis dit que le mieux pour avoir le bas de page correspondant en fin des inscription c'était de créer des feuilles afin d'y intégrer le format de bas de page désirer et le code que j'ai mis ne fait rien qui corresponde a mes besoins
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Worksheets("bas de page devis").Range("a1:I12").Copy
       destination = Sh.Range("A" & DerLig + 1)
    et je ne sais pas comment faire d'où ma demande

    Pascal

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 166
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Le problème vient du fait que tu as confondu une variable destination avec l'argument nommé destination de la méthode Copy
    La bonne syntaxe est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("bas de page devis").Range("a1:I12").Copy destination:=sh.Range("A" & Derlig + 1)
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("bas de page devis").Range("a1:I12").Copy sh.Range("A" & Derlig + 1)
    L'argument Destination est un argument facultatif
    Quand une fonction ou une procédure Sub a un argument facultatif il y a deux manières de faire.
    Dans le cas présent, c'est simple parce-qu'il n'y a qu'un seul argument mais dans le cas où il y en a plusieurs, l'utilisation de l'argument nommé est plus intéressant.
    Exemple
    J'écris une procédure qui contient un argument obligatoire et trois facultatifs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Sub SortTable(Table As Range, Optional lstCol As String, Optional sHeader As Byte = xlGuess, Optional Extend As Boolean = True)
    Imaginons que je doive envoyer la valeur False à l'argument Extend
    J'ai deux syntaxes possible
    Soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SortTable Range("A1"), , ,False
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SortTable Range("A1"), Extend:=False
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  5. #5
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour Philippe et le forum
    ce que j'essaie viens de l'aide(F1) avant de me tourner vers vous
    mais la modifif que tu a fait dans la 1 ere ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("bas de page devis").Range("a1:I12").Copy destination:=sh.Range("A" & Derlig + 1)
    ne fait pas mieux son travail, le bas de page ne vient pas
    et pour les partie de codes avec un argument obligatoire et 3 facultatif me laissent sans voix car connaissant très peu les variables et leurs dérivées

    Pascal

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 166
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    ce que j'essaie viens de l'aide(F1) avant de me tourner vers vous
    C'est que tu as mal lu. Il y avait certainement destination:= et pas destination= c'est une grande nuance cela donne deux résultats différents. En français et dans d'autres langues on peut se permettre des syntaxes approximatives, il y a toujours quelqu'un qui devinera ce que l'on veut dire mais pas en programmation.
    mais la modifif que tu a fait dans la 1 ere ligne
    ne fait pas mieux son travail, le bas de page ne vient pas
    Je fais toujours un test avant de déposer une réponse sur le forum car on n'est jamais à l'abri d'une erreur de syntaxe ou de mémoire ;-) donc je peux te confirmer que cela fonctionne.
    Il serait peut-être intéressant d'être plus précis parce-que "cela ne marche" pas c'est très vague.
    Y a t'il un message d'erreur, des informations farfelues etc ...
    Il y a évidement d'autres choses à vérifier.
    Est-ce que la valeur de ta variable Derlig est correcte ?
    Est-ce que la plage $A$1:$I$12 de la feuille [bas de page devis] contient bien des données ?
    La variable objet sh fait-elle bien référence à la bonne feuille ?
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  7. #7
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour Philippe
    Il y avait certainement destination:= et pas destination=
    oui mais c'est sans les : qui ne faisait pas de bug
    la variable derlig est Long et fait fonctionner
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("A" & DerLig + 1, .Cells(.Rows.Count, 1)).EntireRow.Delete
    d'où vient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("A" & DerLig + 1)
    je te joint ma feuille de bas de page devis
    voila ce que je peux dire de plus

    Pascal

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD-2007] Paramétres traits de séparation de notes de bas de page
    Par locweb dans le forum Word
    Réponses: 3
    Dernier message: 17/11/2010, 13h12
  2. [CR] suppression du bas de page
    Par grosjej dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 10/09/2002, 08h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo