Cours CALC

Cours Macros Calc : Automatiser les tâches répétitives


Télécharger Cours Macros Calc : Automatiser les tâches répétitives

★★★★★★★★★★3.5 étoiles sur 5 basé sur 1 votes.
Votez ce document:

Télécharger aussi :


Table des matières

1Présentation.............................................................................................................................3

1.1Objectif ............................................................................................................................3

1.2Principe ............................................................................................................................4

1.3Fonctionnement de la macro................................................................................................4

1.4Schéma fonctionnel GeOoo..................................................................................................5

2Installation de la Macro..............................................................................................................6

2.1Télécharger puis installer la macro.......................................................................................6

2.2Affecter la macro à  un bouton de la barre d'outils ..................................................................7

2.3 Utilisation.........................................................................................................................9

3Comprendre le paramétrage d'OpenOffice..................................................................................10

4Comment créer des cartes thématiques.....................................................................................13

4.1D'abord s'initier en utilisant les fichiers fournis.....................................................................13

4-2 Ensuite, créer une carte personnelle..................................................................................15

5Téléchargement et conseils ......................................................................................................19

5.1Télécharger ....................................................................................................................19

5.2Méthodologie...................................................................................................................20

5.3Aide, en cas de problème..................................................................................................20

5.4Conclusion.......................................................................................................................21

Cette macro ne prétend pas rivaliser avec les logiciels  de cartographie thématique commerciaux ou pédagogiques existants, mais se veut être, avant  tout, un moyen pour  mieux exploiter OpenOffice et, surtout, permettre d'enrichir les modules OOo.HG.

Ainsi chacun pourra produire rapidement, efficacement et gratuitement  une carte thématique adaptée à  ses propres besoins. Il s'agit d'associer des données géo référencées (nom des objets carte lié  à  une base de données) en utilisant les modules de dessin, tableur et base de données d'OpenOffice avec, bien sà»r, une "macro" spécifique  qui va traiter les données.

Si la macro permet de concevoir des cartes thématiques classiques à  partir de fonds de cartes existants (régions et départements franà§ais, actuellement disponibles en téléchargement), sa spécificité facilite toute création originale et personnelle  de toute carte thématique, avec  un unique logiciel gratuit et libre : la suite OpenOffice...

1 Présentation

1.1 Objectif

L'objectif de cette macro est de réaliser un lien entre un document OpenOffice de type draw comportant des objets polygones fermés et un classeur ou une base de données, en vue d'agir sur les formes présentes dans le document, sur la base de leur nom et en fonction de la valeur renvoyée par une requête.

Un exemple est plus parlant...

Support: Récupérer un fond de carte sur le site ooo.hg.free.fr : ex "communes bretonnes"

Objectif: Nous voulons associer une couleur à  chaque zone espace (ici des communes) en fonction d'un critère spécifique (densité de population, chiffre d'affaires, nombre de Clients, ...) selon une répartition déterminée (après une "discrétisation" manuelle. ex moins de 300, colorié en vert, moins de 500 en jaune ....) sachant que ces données sont présentes dans un tableau OOo.

 

Réalisation manuelle : manuellement  repérer la commune sur la carte (ex: Quessoy),  chercher dans la base sa population,  retourner dans OOo, l' identifier visuellement et appliquer du jaune comme couleur de fond, enfin, insérer  le texte " Quessoy 3184 ". Facile mais très  long et particulièrement fastidieux



Réalisation automatisée : Maintenant,  cette opération peut se faire automatiquement  par l'intermédiaire d'une "macro"

1.2 Principe

Chaque zone espace de base est considérée comme un polygone auquel est attribué un chiffre. Dans le cas de communes, le code INSEE est utilisé, il reprend le numéro du département (toujours d'actualité) suivi d'un numéro d'ordre attribué alphabétiquement, pour Quessoy c'est le 22258. Dans la base ce code est associé à  la population de Quessoy (22258,3184), afin de demander à  OpenOffice de lancer une requête qui récupérera tous les tuples (code INSEE, Population) nécessaires pour mettre en oeuvre une carte thématique en couleur.

L'essentiel du travail de préparation consiste à  nommer chaque forme, représentant une commune à  l'aide de son code INSEE. Quessoy s'appelle '22258' sur la carte. Est également prévu de récupérer le nom de la commune qu'on peut afficher, si on le souhaite.

Pour les régions, départements le principe est le même. Pour d'autres cartes, chacun utilisera un codage spécifique personnel.

1.3 Fonctionnement de la macro.

Après avoir installé la Macro, tout document de type "Draw" ("nom.odg") permet de lancer via un nouveau menu (outils/Add-ons/geooo), une boite de dialogue, servant à  paramétrer la macro qui effectue les requêtes nécessaires.

Avant toute chose, il faut  vous faut un tableau Calc ("nom.ods")  contenant une table (une feuille du classeur “maTable”) qui renvoie trois colonnes (Code, Valeur, Nom)

A chaque occurrence, la macro recherche la forme qui porte le même nom que le code, si la recherche est fructueuse, elle renseigne le texte lié à  la forme par la valeur et le nom de la commune (si l'option a été cochée), colorie cette même forme suivant les seuils définis dans la boite de dialogue.

Un message signale la fin du processus. Il est possible de remettre à  blanc les formes avant chaque lancement.

Il est préférable de conserver une copie du document original, sachant qu'il est possible d'effacer ou de revoir la présentation de la carte après fonctionnement de la macro, puisqu'il s'agit d'un dessin que vous pouvez agrémenter à  votre guise.

1.4 Schéma fonctionnel GeOoo

 

Origine des données:

1  = Classeur OpenOffice

2  = Base de données ( REG =  nom de la source de données enregistrée dans les options d'Ooo pour la base REG.odb de type base OpenOffice liée à  une base externe ex: Firebird)

2 Installation de la Macro

2.1 Télécharger puis installer la macro

... ... ...

-Double cliquer sur le fichier téléchargé (à  partir du dossier de téléchargement de l'extension.)

-Valider OK. Puis :

 

-Cliquez sur "Fermer", l'extension GeOOo est installée

-Un nouveau menu est à  votre disposition dans le menu outils/Add-ons/GeOoo pour lancer la macro

 

2.2 Affecter la macro à  un bouton de la barre d'outils

Si l'accès à  la macro  via le menu add-ons ne vous suffit pas, vous pouvez ajouter un bouton dans la barre d'outils de votre choix.

 

-Sélectionner la macro BbzhGeoDialog dans mes macros / geooo/ geooo :

 

-Cliquez sur assigner :

 

-Cliquez sur Ajouter dans l'onglet Barres d'outils

-rechercher dans catégorie Macros OpenOffice.org/geooo/geooo -sélectionner BbzhGeoDialog et cliquez sur Ajouter:

   

-Placer le nouveau bouton à  l'endroit désiré et cliquez sur modifier pour choisir une icà´ne de votre choix

2.3 Utilisation.

Ouvrez un document Ooo Draw. Insérer une carte

Suivez les indications du tutoriel  et cliquez sur l'icà´ne que vous venez de créer pour concevoir vos cartes

 

3 Comprendre le paramétrage d'OpenOffice

 

configurer le deuxième écran :

 

Si votre classeur comporte une seule série de données et que les colonnes sont dans l'ordre suivant ID,Valeur,Nom ( quelque soit leur nom) vous pouvez ignorer ces valeurs , renseigner le chemin du classeur et cliquer sur lancer, la macro  saura gérer.

Si les colonnes de votre classeur sont dans un ordre différent ou que vous avez deux séries de valeurs à  traiter, vous devez remplir tout ou partie de ces champs.

ID, Description, valeur1,valeur2  doivent comporter le nom exact des champs ou entête de colonnes de votre classeur ex:



Les colonne  PIB et CHOM seront  représentées sous forme de demi-cercles parce que  la valeur " cercle " a été choisie en 1 & 2

 

Si la valeur " couleur " est placée en 1 et " cercle " en 2, on obtient le résultat suivant :

 

4 Comment créer des cartes thématiques

4.1 D'abord s'initier en utilisant les fichiers fournis

  1. Ouvrir le dossier reg

 

  1. Création de votre carte thématique dans reg.odg à  partir d'un classeur reg.ods 1. Ouvrir reg.odg

 

  1. Cliquer sur votre  bouton pour lancer la macro

et lui indiquer  (en respectant la casse) :

-  le nom du classeur  ex: REG (sert à  l'enregistrement des paramètres , ne coà¯ncide pas nécessairement avec le nom du classeur qui contient les données)

-  le nom de la feuille  ex: PIB (doit correspondre au nom exacte de la feuille du classeur)

  1. Remarquer que

-la légende est automatiquement créée  et affiche les seuils.

-le  titre  est automatiquement affiché : vous pouvez le modifier et l'enrichir (une zone de texte nommée "montitre" a été prévue au-dessus de la carte)

-Sur le même principe, si vous avez prévu une zone de texte nommée "monfiltre ", le filtre que vous saisi pour le lancement de votre requête, apparaitra sur le dessin

-les couleurs et le titre sont enregistrés dans la base  'geooparmV2'  et seront rappelées lors d'une prochaine sélection  ( même source et même requête)

  1. Cliquer sur "Suiv " pour afficher l'écran suivant.

 

  1. Rechercher le fichier reg.ods en cliquant sur Parcourir...
  2. Cliquer sur Lancer pour produire votre carte

 

4-2 Ensuite, créer une carte personnelle

1-Ouvrir le dossier reg

Créer un (nouveau) dossier et y copier les   2 fichiers

DESSIN reg.odg et TABLEUR reg.ods

Comme vous envisagez de modifier carte et données, mettre un  (même) nouveau nom à  l'ensemble de ces 2 fichiers

 

2-Ouvrir reg.odg  [dessin]

-Effacer la carte

-Insérer la nouvelle carte (glisser/déposer depuis Cart'OOo)

-Attribuer des numéros aux "objets polygones " (clic droit sur l'objet >Nom... et compléter)

-Créer : (si elle n'existe pas déjà )

-Une zone de texte (encadrée ou non...) nommée "montitre" située au-dessus de la carte. Là  s'affichera le titre de la carte, renseigné dans la boà®te de dialogue

-5 dessins de  formes rectangulaires nommés "seuil1","seuil2", "seuil3" , "seuil4" et "seuil5" (en minuscule et sans espace) ainsi la macro remplira  ces rectangles avec la couleur et la valeur de chaque seuil. Mettre au dessus, une zone de texte avec un texte " Légende " Dans les exemples fournis ces  "objets" ont été prévus.

3-Créer une feuille de calcul avec Calc

OU Ouvrir reg.ods [feuille de calcul Calc]

-Créer une feuille de calcul avec  3 colonnes sur ce modèle

 

A= Numéro d'identification    B= Données   chiffrées   C= Nom des polygones

Si vous ne respectez pas cet ordre, il faudra renseigner le nom des colonnes correspondantes dans le deuxième écran de paramétrage. Le nombre de colonnes n'est pas important, d'autres  peuvent être utiles pour filtrer les enregistrements sélectionnés.(ex vous pouvez avoir un fichier commun à  plusieurs années, vous pourrez alors saisir dans le champ filtre  : ANNEE = 2008 ) le champ filtre correspond à  la clause WHERE du Langage SQL

-Si nécessaire créer, dans le même fichier, d'autres feuilles (une seule série de données par feuille)

 

-Enregistrer dans votre dossier (créé en 1) en choisissant, de préférence, le même nom que le fichier dessin auquel il est associé (geooo.ods)

Création de votre carte thématique dans reg.odg

-(re) Ouvrir reg.odg

-Cliquer sur votre  bouton pour lancer la macro

et lui indiquer  (en respectant la casse) : - le nom de la feuille ex: densite puis créer les seuils



-Cliquer sur "Lancer"  pour produire votre carte.

Remarquer que :

-la légende est automatiquement créée  et affiche les seuils.

-que le  titre est automatiquement affiché, vous mouvez le modifier (Zone texte)

-La première fois, il faut renseigner tous les champs, (Titre, 'dep','dens', ...couleurs), le fait de cliquer sur Lancer (s'il n'y a pas d'erreurs) va mémoriser la saisie dans la base geoparmV2. La fois suivante, la macro récupérera la dernière saisie.

(La première fois la macro n'a pas connaissance de vos bases personnelles.)

Ainsi vous verrez apparaà®tre dans le menu déroulant vos données déjà  saisies:

     

La même carte produite par Wincarto (discrétisation par quantiles)

5 Téléchargement et conseils

5.2 Méthodologie

1- Créer un dossier "geooo" et y décompresser  geoo.zip pour obtenir:

 

2-D'abord installer la macro en cliquant sur geooo.oxt (voir rubrique "Installation") qui va créer un sous menu "Geooo" dans => Outils/Add-ons/GeOoo

A savoir :

-La première fois, il faut renseigner tous les champs

(Titre, 'dep','dens', ...couleurs), le fait de cliquer sur Lancer (s'il n'y a pas d'erreurs) va mémoriser la saisie dans la base geoparm.

(La première fois la macro n'a pas connaissance de vos bases personnelles.) -La fois suivante, au lancement,  la macro récupérera la dernière saisie.

5.3 Aide, en cas de problème...

COMPRENDRE

Qu'est ce que la base geoparm.odb ?

Elle permet de retrouver les dernières couleurs et le titre saisi lors du dernier lancement d'une requête, l'origine des données (classeur ou base). La mémorisation se fait dans cette base de données geoparm.odb. Ainsi des listes déroulantes apparaissent dans la boite de dialogue Geooo. La base s'alimente au fur et mesure des utilisations d'une manière transparente pour l'utilisateur.

Il faut, à  la première conception d'une carte avec une nouvelle base, renseigner tous les champs (Titre, 'dep','dens', ...couleurs), le fait de cliquer sur Lancer (s'il n'y a pas d'erreurs ) va mémoriser la saisie dans la base geoparm. La fois suivante, la macro récupèrera la dernière saisie. (La première fois la macro n'a pas connaissance de vos bases personnelles.)

VERIFIER

-le tableau de données respecte bien  l'ordre indiqué des  colonnes, et, chaque colonne comprend bien les données adéquates (Numéro avec des chiffres / Valeur avec des chiffres / Nom avec un texte)

-les renseignements de la boà®te de dialogue : dans le cas d'une base, en particulier le nom de la source de données et de la requête, avec l'orthographe exacte ! Dans le cas d'un classeur, le nom du classeur et le nom de la feuille

-La base de données : le nom de  toutes les tables est-il présent ? Chaque table affiche-t-elle bien son contenu ?

-Après une  modification ou ajout de données (tables...) il est nécessaire de refaire les paramétrages ( cas d'une base liée à  un classeur)

-En cas de problème persistant, le plus simple consiste  à  refaire un nouveau dossier (nom différent) puis y copier vos  fichiers en changeant leur nom. Ensuite, effectuer un nouveau paramétrage.


383