Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion Calvus
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Calvus

XLDnaute Barbatruc
Bonsoir le Forum,

Pourquoi ce code fonctionne t'il ?
Code:
c = Sheets("Feuil1").Range("A2").Value
MsgBox (c)

Et pas celui-ci ?
Code:
c = Sheets("Feuil1").ActiveCell.Value
MsgBox (c)

ActiveCell étant la cellule A2 bien évidemment.

Merci.
 
Re : Vba ActiveCell

re

- Avec Plage.Copy Cellule on copie la plage (et contenus, et formules et formats) à partir de la cellule citée.
- Avec Plage.Copy on copie la plage dans le presse-papier (équivalent au Ctrl C). Ensuite, avec .Paste, on ressort ce que l’on veut (soit valeur, soit formule, soit format )

- J’ai parlé de la page de code du bouton pour ne pas avoir à faire référence au Range de la feuille
(exemple : Feuil1.Plage= "", Sheets(nom de l’onglet). Plage = "", With Feuil1 : Plage= "" : End With peuvent y être remplacés simplement par Plage= "")

- Pour mon mauvais de mot dérivé du titre de film « Snatch, Tu braques ou tu raques »,
un antislash (\) manquant ou en trop dans un chemin et c’est le clash (rupture, désaccord) avec la macro.
 
Re : Vba ActiveCell

Re,

Merci pour les explications.

Par contre, avec le dernier code que tu m'as envoyé, post#29, la copie se fait correctement dans le classeur de destination mais pas sur le Pdf, qui enregistre la copie du classeur de destination....

J'imagine que c'est à cause de
Code:
Feuil1.ExportAsFixedFormat Type:=0, Filename:=Chemin, Quality:=0, _
           IncludeDocProperties:=1, IgnorePrintAreas:=0, OpenAfterPublish:=1

Et si je remplace Feuil1 par Selection, ça n'enregistre que la cellule correspondant à la cible (Vers_où).

Tu sais comment faire ?
Et toi 00, tu sais ? 🙂🙂

Merci
 
Re : Vba ActiveCell

Salut

A noter que « Selection » correspond à la dernière plage sélectionnée (sur le classeur ou par programmation) et dans ton cas ce n’est qu’une cellule. Voilà pourquoi je suis allé au plus large (Feuil1).

Si tu me proposes un canot de sauvetage, je pourrais réclamer la compagnie de 😀😀, mais pour ne plus naviguer à vue, surtout n’oublie pas de livrer une boussole et le cap à atteindre.
 
Re : Vba ActiveCell

Bonjour le Forum,

DoubleZero à dit:
A présent, moi avoir besoin d'une bouée !

Alors on est deux !

Alors voici. Hier je suis arrivé à mes fins avec ce code.


VB:
Sub Envoi_Pdf()
Dim Planning As Workbook, Vers_où As String, fichier As String, Dossier As String, Chemin As String 'ajout

Application.ScreenUpdating = False

Reponse = MsgBox("Avez vous sélectionné un onglet et une date ?", vbYesNo + vbQuestion, "Sélection Onglet")
If Reponse = vbYes = no Then
Exit Sub
End If
Vers_où = Selection.Text

'Création nouvelle feuille
    Set Noufeuil = Sheets.Add(After:=Sheets(Sheets.Count))
        ActiveSheet.Name = Sheets("Feuil1").Range("B5") & " " & Sheets("Feuil1").Range("B2")
                
'Ouverture du classeur
    Set Planning = Workbooks.Open("C:\Users\Toto\Documents\Toto.xlsx")

ActiveWorkbook.Sheets(Vers_où).Activate
Range("B2:H34").Copy ThisWorkbook.ActiveSheet.Range("B2")
Planning.Close False

ActiveSheet.Range("B2:H36").Select
    
    With ActiveSheet
    fichier = "\" & Range("B2") & " Mjc.pdf"
    Dossier = "C:\Users\Toto\Documents\Excel"
    Chemin = Dossier & fichier
    End With

Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin, _
    Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True

Feuil1.Select

Application.ScreenUpdating = True

End Sub

Miracle, ça fonctionne ! Même la boite de dialogue. Et tout seul MsieursDames !! 😎

Pourriez vous me dire, pour ceux qui suivent ou que ça intéresse, ce que je peux améliorer dans ce code ?
Si j'ai oublié des déclarations ou si je peux faire plus court ou efficace ?

Si, je viens de lire ton dernier post, et là ça m'éclaire vraiment. Je vais donc regarder à nouveau avec cet élément supplémentaire de compréhension. Donc à nouveau merSi 🙂🙂

Concernant le cap, j'y arrive petit à petit.
Donc création d'une nouvelle feuille, copie de la zone sélectionnée, et enregistrement du Pdf correspondant.

Me manquent, la prochaine étape donc, l'envoi d'un mail par sélection d'une adresse dans une cellule de mon classeur, ainsi que la désignation complète du répertoire à partir du même classeur. Encore quelques heures d'insomnie en perspective ! C'est mieux pour ne pas sombrer dans cette tempête ! 🙂
 
Re : Vba ActiveCell

Bonjour, le Fil 🙂, le Forum,

... Miracle, ça fonctionne ! Même la boite de dialogue. Et tout seul MsieursDames...

Bravo 😀 M'sieur !

... Pourriez vous me dire... Si j'ai oublié des déclarations...

Pour avoir la certitude que chaque variable est correctement déclarée, placer en tête de chaque module :

Code:
Option Explicit ' <- ceci
Sub toto()
'variables...
'suite du code...
End Sub

...Me manquent, la prochaine étape donc, l'envoi d'un mail par sélection d'une adresse dans une cellule de mon classeur, ainsi que la désignation complète du répertoire à partir du même classeur...

Peut-être trouveras-tu ton bonheur dans cette discussion.

Bon courage et à bientôt 🙂🙂
 
Re : Vba ActiveCell

Bonjour le forum,

Miracle, ça fonctionne ! Même la boite de dialogue. Et tout seul MsieursDames !! 😎

Enfin je rectifie. Car des parties de code m'ont été données ou inspirées par toi Double Zéro, ainsi que l'aide de Si et Dranreb pour comprendre (enfin je crois..) les différences d'objet et propriétés.

Option Explicit, je le savais. Pourquoi ne l'ai-je pas fait ? Quel idiot !

Merci pour le lien, je vais regarder ça.

Bonne journée et à bientôt. 😉😉
 
Re : Vba ActiveCell

Bonjour Calvus, DoubleZero, Si..., Dranreb 😀

@ Calvus: une autre façon de créer un PDF en PJ, auteur Ron de Bruin.

Clique sur l'image PDF ensuite donne un nom au document.


Très bon dimanche à tous.


Amicalement Lone-wolf 😎
 

Pièces jointes

Dernière édition:
Re : Vba ActiveCell

Bonsoir le 00, Lone-wolf, le fil,

Merci pour vos informations précieuses.
J'ai déjà jeté un œil, et ne vous raconte pas le suite ! Parlons seulement de l'indigestion ! 🙂

J'y pige pas un godet de boule de pelle à neige du désert, mais c'est pas grave. Je vais me familiariser.

C'est vraiment intéressant en tout cas. Yapluka !

Merci et bonne soirée. 🙂


EDIT : @ Lonewolf. Ça a l'air de fonctionner vite ce truc. Je vais essayer d'adapter à mon fichier, mais je risque de revenir demander de l'aide..
Merci, et merci pour les autres macros 🙂

@ 00
Double Zero à dit:
ton logiciel est Outlook

Pourquoi ? Il y a encore des gens qui utilisent d'autres logiciels de messagerie ? 😉😉😉😛😛😛
A bientôt😛🙂🙂🙂
 
Dernière édition:
Re : Vba ActiveCell

Re-bonjour, bonjour, Lone-wolf,

Bonsoir le 00... Il y a encore des gens qui utilisent d'autres logiciels de messagerie ? 😉😉😉😛😛😛😛🙂🙂🙂



Pour tout message, "le 00" pas connaître mieux que le tam-tam, par temps de pluie, ou la fumée, par temps sec !

A bientôt 😛😉😀🙂😛😎😛
 

Pièces jointes

  • le 00.gif
    93.7 KB · Affichages: 51
Re : Vba ActiveCell

Re bounour !

Tu les trouves où toutes tes images 00 ?

C'est impressionnant la collection que tu as.
Celui-ci est très mignon en tout cas. 🙂
Mais il devrait se mettre à Outlook, il aurait l'air moins penaud ! 😛😉

A bientôt 🙂🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
213
Réponses
15
Affichages
639
Réponses
2
Affichages
127
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…