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

OpenOffice & LibreOffice Discussion :

Mise à jour de stock via une macro


Sujet :

OpenOffice & LibreOffice

  1. #1
    Candidat au Club
    Femme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Avril 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2017
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Mise à jour de stock via une macro
    Bonjour,

    J'ai un tableau de produits avec les stocks actuels (B) et les nouveaux stocks (C).
    Cependant la colonne nouveau stock contient des #N/D car ces références ne sont pas dans le nouveau stock (nous avons plusieurs fournisseurs et donc plusieurs fichiers de nouveaux stocks).

    Je souhaiterais mettre à jour la colonne STOCK (B)
    Si la colonne NOUVEAU STOCK supérieur à STOCK alors je souhaiterais que la colonne B soit remplacée par la valeur de la colonne C
    Si la colonne NOUVEAU STOCK différent de #N/D alors je souhaiterais que la colonne B soit remplacée par la valeur de la colonne C
    Si la valeur de la colonne NOUVEAU STOCK = #N/D inférieure à colonne B alors je souhaiterais que la valeur de la colonne B reste identique.

    Je vous met en pj le fichier

    Je ne sais pas faire de macro, si quelqu'un peut m'aider...

    Merci,

    J'espère avoir été claire.

    Merci
    Fichiers attachés Fichiers attachés

  2. #2
    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
    Bonjour,

    Les règles du forum sont claires, nous ne sommes pas là pour faire le travail à votre place mais pour vous aider. vous devez proposer quelque chose.

    Il existe sur le site un tutoriel pour commencer à utiliser les macros : Utiliser oBasic dans le Tableur (Calc), par la suite vous pourrez commencer à créer votre macro, et nous pourrons vous aidez.

    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

  3. #3
    Candidat au Club
    Femme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Avril 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2017
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    J'ai essayé de faire une macro, mais ça ne marche pas...

    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
    REM  *****  BASIC  *****
     
    Sub Test()    Dim monDocument As Object
         Dim lesFeuilles as Object
         Dim maFeuille As Object
         Dim maCellule As Object
         Dim maPosition As Object
         Dim ValCellile as string
     
     
        monDocument = ThisComponent
        lesFeuilles = monDocument.Sheets
        maFeuille = lesFeuilles.getByName("Feuille1")
     
     
        maPosition = maFeuille.createCursor
        maPosition.gotoEndOfUsedArea(False)
        DerniereLig = maPosition.RangeAddress.EndRow
     
        For i = 2 to DerniereLig
            maCellule = maFeuille.getCellRangeByName("C" & i)
            ValCellule = maCellule.String
            if ValCellule <> "#N/D" then 
                maCellule = maFeuille.getCellRangeByName("B" & i)
                maCellule.Value = ValCellule 
            else ValCellule = ("C">"B") 
                maCellule = maFeuille.getCellRangeByName("C" & i)
                maCellule.Value = ValCellule 
            end if
        Next
     
     
    End sub

  4. #4
    Membre expérimenté

    Homme Profil pro
    linux, pascal, HTML
    Inscrit en
    Mars 2002
    Messages
    649
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : linux, pascal, HTML
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2002
    Messages : 649
    Points : 1 493
    Points
    1 493
    Billets dans le blog
    1
    Par défaut
    Bonjour
    je ne comprend pas ce qu'est sensé faire
    Pour moi, cela consiste à placer True dans ValCellule; cela m'étonnerais que ce soit le but !

  5. #5
    Membre expérimenté

    Homme Profil pro
    linux, pascal, HTML
    Inscrit en
    Mars 2002
    Messages
    649
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : linux, pascal, HTML
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2002
    Messages : 649
    Points : 1 493
    Points
    1 493
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     if ValCellule <> "#N/D"
    Cela ne marche pas car #N/D est un code d'erreur et pas une chaine !
    J'ai du un peu chercher mais ceci fonctionne dans le fichier que tu as joint, dans une cellule vide essaye :
    renvoie FAUX alors que renvoie VRAI

  6. #6
    Candidat au Club
    Femme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Avril 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2017
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Je vais essayer. Je reviens vers vous si jamais je n'y arrive pas.

    Merci pour vos réponses

Discussions similaires

  1. Mise à jour progress bar via une boucle for
    Par solo190 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/03/2017, 18h33
  2. Réponses: 4
    Dernier message: 04/05/2015, 18h18
  3. [XL-2003] Mise à jour des résultats d'une macro
    Par martinmacfly dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/12/2009, 15h44
  4. mise a jour d une requete via une macro
    Par adelsunwind dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 10/03/2009, 10h00
  5. Réponses: 2
    Dernier message: 05/12/2005, 16h39

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