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

Publications Discussion :

Utiliser oBasic dans le Tableur (Calc) [Tutoriel]


Sujet :

Publications

  1. #1
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut Utiliser oBasic dans le Tableur (Calc)
    Bonjour,

    Voici un tuto sur comment débuter avec oBasic dans le Tableur. Ce tutoriel ne sera qu'un élément de base pour la programmation, il ne contiendra pas toutes les commandes possibles, mais l'essentiel pour commencer à travailler avec Tableur (Calc).
    Le tuto se trouve ici.

    @+.
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  2. #2
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    Juillet 2012
    Messages
    9 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9 133
    Points : 83 975
    Points
    83 975
    Billets dans le blog
    15
    Par défaut
    ,
    Les tutoriels sur oBasic n'étant pas nombreux, celui-ci vient au bon moment.
    Merci beaucoup.
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  3. #3
    Membre averti
    Homme Profil pro
    Informaticien
    Inscrit en
    Juin 2004
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informaticien
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2004
    Messages : 182
    Points : 357
    Points
    357
    Par défaut
    Simple et Précis.

    Merci pour ce tuto !

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Comme toujours, très bon tutoriel.


  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par zoom61 Voir le message
    Bonjour,

    Voici un tuto sur comment débuter avec oBasic dans le Tableur. Ce tutoriel ne sera qu'un élément de base pour la programmation, il ne contiendra pas toutes les commandes possibles, mais l'essentiel pour commencer à travailler avec Tableur (Calc).
    Le tuto se trouve ici.

    @+.
    Merci pour ce tuto, mais quelques correctifs sur le tuto :
    § V-A-3 - La cellule active --> mettre : Dim maCellule as object
    ...
    maCellule = maFeuille.getCellRangeByName("A2")
    ...
    maCellule.FormulaLocal="=somme(A1:100)"
    § V-C-1 - Une Valeur --> Appeler la fonction Sub LireValeur()

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par jeep56 Voir le message
    Merci pour ce tuto, mais quelques correctifs sur le tuto :
    § V-A-3 - La cellule active --> mettre : Dim maCellule as object
    ...
    maCellule.FormulaLocal="=somme(A1:100)"
    § V-C-1 - Une Valeur --> Appeler la fonction Sub LireValeur()
    Corrections faites.

    Citation Envoyé par jeep56 Voir le message
    maCellule = maFeuille.getCellRangeByName("A2")
    Là, j'ai pas compris
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  7. #7
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Très bon tuto
    Bonjour,

    C'est un très bon tuto pour débuter en macro sous libre office
    Je programme habituellement sous VBA Excel. Et ce n'est pas évident de passer de l'un à l'autre.


    § V-B-3 - Une formule

    Une petite erreur de frappe : maCellule.Formula = "=SUM(A1:A100") ne semble donc pas corrigé.

    De plus "=SUM(A1:A100)" génère une erreur de référence circulaire si la cellule de référence est "A1" comme dans le tuto

    Et "=SOMME(A1:A100)" en FomulaLocal ne fonctionne pas chez moi, il l'écrit comme un string. Une idée ?

    A+

  8. #8
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par Yopsom Voir le message
    C'est un très bon tuto pour débuter en macro sous libre office
    Je programme habituellement sous VBA Excel. Et ce n'est pas évident de passer de l'un à l'autre.
    Merci

    Citation Envoyé par Yopsom Voir le message
    Une petite erreur de frappe : maCellule.Formula = "=SUM(A1:A100") ne semble donc pas corrigé.

    De plus "=SUM(A1:A100)" génère une erreur de référence circulaire si la cellule de référence est "A1" comme dans le tuto
    C'est corrigé

    Citation Envoyé par Yopsom Voir le message
    Et "=SOMME(A1:A100)" en FomulaLocal ne fonctionne pas chez moi, il l'écrit comme un string. Une idée ?
    Le langage par défaut est bien le français !

    Cdlt.
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  9. #9
    Membre du Club
    Homme Profil pro
    techno
    Inscrit en
    Octobre 2012
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : techno
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 121
    Points : 55
    Points
    55
    Par défaut
    Bonjour,

    Je m'y perds dans obasic par rapport à VBA, mais ce tuto sur les macro m'éclaire grandement.

    Cependant, quelle est dans le catalogue la différence entre la partie "Standard" et "VBAProject" svp ? les sous menus sont les mêmes .

    Dans lequel des 2 pourrais-je récupérer ma macro ?
    SVP

    merci

  10. #10
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par Mod77 Voir le message
    Cependant, quelle est dans le catalogue la différence entre la partie "Standard" et "VBAProject" svp ? les sous menus sont les mêmes .
    Standard : c'est quand la macro a été créée avec LibreOffice (ou Apache OpenOffice).
    VBAProject : c'est quand le fichier est issu de Microsoft Office (un fichier qui a été converti).
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  11. #11
    Membre du Club
    Homme Profil pro
    techno
    Inscrit en
    Octobre 2012
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : techno
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 121
    Points : 55
    Points
    55
    Par défaut
    Citation Envoyé par zoom61 Voir le message
    Standard : c'est quand la macro a été créée avec LibreOffice (ou Apache OpenOffice).
    VBAProject : c'est quand le fichier est issu de Microsoft Office (un fichier qui a été converti).
    ok, merci! même si c'est tard

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Responsable association
    Inscrit en
    Mai 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable association

    Informations forums :
    Inscription : Mai 2018
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Bravo
    Votre tuto m'a bien aidé pour démarrer. J'ai beaucoup progressé depuis et il me semble aujourd'hui tellement simple... mais à l'époque quelle joie de trouver cet excellent tuto. Merci.

  13. #13
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 597
    Points : 7 832
    Points
    7 832
    Par défaut
    Bonjour

    L'accès aux macros est plus facilement maintenant [Ouitls]->[macro]->[Éditer les macros]
    Tant que j'y suis :
    - comment trouver la taille d'une cellule, pour la hauteur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    doc.Sheets.getByName("recto").getCellByPosition(colonne,ligne).Position.Y-doc.Sheets.getByName("recto").getCellByPosition(colonne,ligne-1).Position.Y
    nb : les lignes sont numérotées comme sur calc à prtir de 1 avec ce code et pour les colonnes A correspond à 0.
    - Changer la taille de caractères d'une plage de cellule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    sub taille_caract(page as integer,xj as integer,y as integer,dx as integer,dy as integer,taille_c as single)
    rem page : numéro de la feuille (xj,y) coordonnées du point de départ (dx,dt) taille de la plage de cellules à modifier, taille_c : taille de la police de caractères
    rem define variables
    dim document   as object
    dim dispatcher as object
    dim xf as string
    dim i,j as integer
    dim x as string
     
     
    j=xj+1
     
    x=""
    while j>25
     x=x+chr$(asc("A")+(j-1) mod 26)
     j=j/26
    wend
    x= "$"+chr$(asc("A")+j-1)+x+"$"+y
     
     
    j=xj+dx+1
    xf=""
    while j>25
     xf=xf+chr$(asc("A")+(j-1) mod 26)
     j=j/26
    wend
    xf=x+":$"+chr$(asc("A")+j-1)+xf+"$"+(y+dy)
     
    rem ----------------------------------------------------------------------
    rem get access to the document
    document   = ThisComponent.CurrentController.Frame
    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
     
    rem ----------------------------------------------------------------------
     
    dim args1(0) as new com.sun.star.beans.PropertyValue
    args1(0).Name = "Nr"
    args1(0).Value =  page+1
     
    dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())
     
    rem ----------------------------------------------------------------------
    dim args2(0) as new com.sun.star.beans.PropertyValue
    args2(0).Name = "ToPoint"
    args2(0).Value = xf
     
    dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
     
    rem ----------------------------------------------------------------------
    dim args3(2) as new com.sun.star.beans.PropertyValue
    args3(0).Name = "FontHeight.Height"
    args3(0).Value = taille_c
    args3(1).Name = "FontHeight.Prop"
    args3(1).Value = 100
    args3(2).Name = "FontHeight.Diff"
    args3(2).Value = 0
     
    dispatcher.executeDispatch(document, ".uno:FontHeight", "", 0, args3())
     
    end sub
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

Discussions similaires

  1. [AIR] [Article] Utiliser SQLite dans une application AIR
    Par beekeep dans le forum Flex
    Réponses: 2
    Dernier message: 06/09/2010, 10h24

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