Sélection et cellules fusionnées

  • Initiateur de la discussion Initiateur de la discussion Unusual
  • 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 !

U

Unusual

Guest
Bonjour,

Je créé via OLE un document de sortie Excel à partir d'un modèle Excel dont certaines colonnes sont nommées, signifiant que celles-ci vont accueillir la valeur de champ d'une table.

Juste pour une meilleure compréhension du problème, voici le code Delphi utilisé :
Code:
        ColMin := aColonneDepartDetailDevis;
        ColMax := aColonneDepartDetailDevis;
        for CompteurColonne := Low(TabColonne) to High(TabColonne) do
        begin
             NomColonne := Words(EnteteDevis,';',CompteurColonne+1);
             // Recherche de la colonne de chaque champ
             try
                aXLApp.Goto(NomColonne);
                aXLApp.Selection.Copy;
                TabColonne[CompteurColonne] := aXLApp.Selection.Column;
                if ColMin > TabColonne[CompteurColonne] then
                   ColMin := TabColonne[CompteurColonne];
                if ColMax < TabColonne[CompteurColonne] then
                   ColMax := TabColonne[CompteurColonne];
             except
                   TabColonne[CompteurColonne] := -1;
             end;
        end;
        aColonneDepartDetailDevis := ColMin;

Mon problème vient précisément de :
Code:
aXLApp.Goto(NomColonne);
aXLApp.Selection.Copy;
TabColonne[CompteurColonne] := aXLApp.Selection.Column;

Je veux récupérer le numéro de colonne devant accueillir toutes les valeurs d'un champ donné. Tout se passe bien tant qu'il n'y a pas de cellules fusionnées dans la page, mais si par hasard il y a au moins une cellule fusionnée à cheval sur la colonne recherchée, je récupère la valeur minimum de colonne de la sélection.

Exemple :

Si la colonne 4 (D) est nommée 'toto' et qu'il existe une fusion de cellules sur la plage D3D4, la valeur qui m'est retournée par la portion de code ci-dessus est 3 (au lieu de 4)...

Comment puis-je solutionner ce problème ?

Message édité par: unusual, à: 13/06/2005 15:43
 
Bonjour,

L'utilisation de cellules fusionnées posant souvent problème dans Excel, essaye d'utiliser plutot le centrage sur plusieurs colonnes:


Format / cellule / Alignement horizontal 'Centré sur plusieurs colonnes'

Décoche la case 'Fusionner les cellules'

Cela devrait régler le pb.


@+

Gael
 
Oui, c'est ce qui est fait en ce moment, je stipule aux utilisateurs de ne pas utiliser de fusion de cellules....mais j'ai beau le répéter, le mettre en gras dans la documentation...j'ai sans cesse des retours par EMail me disant : 'Ca marche pas !' avec le modèle Excel en pièce jointe...et là, à chaque fois, ils ont remis des cellules fusionnées... :angry: ARGHH ! :angry: ....et je remplace inlassablement ces fusions par des alignements sur plusieurs colonnes :S ....avant de renvoyer après modification...et je perds mon temps quand ce n'est pas mon sang-froid !

Je voudrais m'affranchir de cette limite, c'est tout...et surtout pour ne plus être ennuyé par ces retours stupides. Je me dis que j'ai plus vite fait de changer mon code que les personnes derrière leur micro 😉

Il doit bien y avoir une façon de récupérer l'indice de la colonne nommée même si la sélection porte sur plusieurs colonnes à cause de ces fusions, non ?
 
Re:Sélection et cellules fusionnées [RESOLU]

J'ai trouvé mon information en utilisant la propriété RefersTo sur le nom donné à chaque colonne, puis en analysant son contenu...pour ceux que cela intéresse, vous n'avez qu'à me le demander...je ne le mets pas ici, car c'est du code Delphi (pour l'analyse)...
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

N
  • Question Question
Réponses
5
Affichages
591
A
Réponses
10
Affichages
2 K
A
C
Réponses
3
Affichages
877
Christophe-
C
R
Réponses
5
Affichages
2 K
R
M
Réponses
19
Affichages
8 K
Retour