VBA – Inscription dans une cellule de l’adresse de la dernière cellule couverte
Résolu/Fermé
DanGg
-
Modifié le 30 janv. 2021 à 13:28
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 30 janv. 2021 à 18:31
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 30 janv. 2021 à 18:31
A voir également:
- VBA – Inscription dans une cellule de l’adresse de la dernière cellule couverte
- Aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Darkino nouvelle adresse - Guide
- Proteger cellule excel - Guide
- Excel compter cellule couleur sans vba - Guide
4 réponses
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
30 janv. 2021 à 13:21
30 janv. 2021 à 13:21
Bonjour,
Avec VBA, il faut absolument éviter d'utiliser .Select (et donc Selection) et plus généralement éviter tous les objets actifs.
C'est la première source d'erreurs de code.
A mon avis, il est inutile d'écrire les résultats dans des cellules, il faut gérer au niveau de la macro.
Avec VBA, il faut absolument éviter d'utiliser .Select (et donc Selection) et plus généralement éviter tous les objets actifs.
C'est la première source d'erreurs de code.
Option Explicit Sub AdresseZoneDeTexte() Dim shp As Shape Dim rng As Range With Worksheets("feuill1") Set shp = .Shapes("ZoneTexte 2") .Range("J1").Value = shp.TopLeftCell.Address(False, False) .Range("J2").Value = shp.BottomRightCell.Address(False, False) ' Ou plutôt : Set rng = .Range(shp.TopLeftCell, shp.BottomRightCell) .Range("J3").Value = rng.Address(False, False) End With End Sub
A mon avis, il est inutile d'écrire les résultats dans des cellules, il faut gérer au niveau de la macro.
La première partie de la macro proposée résout totalement mon souci.
Merci.
La seconde partie optionnelle (venant à la place de la précédente à partir de 'Set') ne fonctionne pas chez moi. Pour info
Mais merci !
vous avez raison par ailleurs ; je vais gérer le reste à partir de la macro.
Merci.
La seconde partie optionnelle (venant à la place de la précédente à partir de 'Set') ne fonctionne pas chez moi. Pour info
Mais merci !
vous avez raison par ailleurs ; je vais gérer le reste à partir de la macro.
Correction : la totalité de votre macro fonctionne parfaitement si l'on met ensemble les deux parties, remplacement le "Et plutôt" indicatif par "Et en sus", pour donner l'adresse de la plage, comme vous l'avez fait.
il n'y avait pas lieu, semble t-il, à séparer les deux parties.
il n'y avait pas lieu, semble t-il, à séparer les deux parties.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
Modifié le 30 janv. 2021 à 16:46
Modifié le 30 janv. 2021 à 16:46
C'est les lignes 8,9, 10 (et 12) qui sont inutiles, ensuite il faut gérer le rng
Pourquoi utilises-tu Excel, Word me semble plus approprié ?
Pourquoi utilises-tu Excel, Word me semble plus approprié ?
Ok, Merci Parfait et résolu
(je ne sais comment on l'inscrit. Acceptez-vous de le faire pour moi : c'est résolu. Merci
Pourquoi excel ? parce que le classeur réel est bien plus complexe que ce que montre cette feuille. Celle-ci n'est qu'un accessoire à nos fichiers et présente l'avantage, puisque inclue parmi les autres feuilles de calcul, de faire l'objet d'une impression groupée avec numérotation de pages cohérente pour l'ensemble. Au surplus, cette feuille sera peu couramment utilisée, alors que les autres le seront.
Merci de votre aide !
(je ne sais comment on l'inscrit. Acceptez-vous de le faire pour moi : c'est résolu. Merci
Pourquoi excel ? parce que le classeur réel est bien plus complexe que ce que montre cette feuille. Celle-ci n'est qu'un accessoire à nos fichiers et présente l'avantage, puisque inclue parmi les autres feuilles de calcul, de faire l'objet d'une impression groupée avec numérotation de pages cohérente pour l'ensemble. Au surplus, cette feuille sera peu couramment utilisée, alors que les autres le seront.
Merci de votre aide !
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
30 janv. 2021 à 18:31
30 janv. 2021 à 18:31
Excel est spécialisé dans le calcul mais pour une mise en page destinée à l'impression c'est très loin d'être aussi performant que Word.
J'aurais fait l'inverse, en incluant des feuilles Excel dans un document Word.
J'aurais fait l'inverse, en incluant des feuilles Excel dans un document Word.