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

Macros et VBA Excel Discussion :

Excel5 vers excel 2003


Sujet :

Macros et VBA Excel

  1. #21
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par MJMJ
    Balises de code rajoutées par: Pouvez vous m'expliquer cette annotation
    Merci
    quand tu relis tes messages tu ne t'est pas aperçu .. qu'il n'étaient pas présentés pareils selon que le code soit encadré de balise ou pas... ! l'annotation est la pour te rappeller que tu as oublié .. de mettre ces balises et qu'un administrateur s'en est chargé pour toi ! ..


    : message 400 : je comprends pas ou tu lit ce message excel ne renvoit jamais "message 400" ?

  2. #22
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Bonjour bbill

    Programme toujours bloqué à la ligne suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
       repere = Val(Range("B" & l).Value + " ") 
       Range("B" & l) = repere 
       If repere = 0 Then 
         Range("B" & l) = "" 
         Range("B" & l & ":B" & l).Interior.ColorIndex = 3 
         GoTo saute_err
    Bonne journée

    MJM

    Balises ajoutées par ouskel'n'or. Penser aux balises Nom de gu !

  3. #23
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Voici le bloc ou ets située l'erreur



    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
    61
    62
    63
    64
    Sub Majlin()
       Sheets("Saisie").Select
       l = ActiveCell.Row
       C = ActiveCell.Column
       If l < 15 Then Exit Sub
     'Detection marque,repère & quantité
       marque = UCase(Trim(Range("A" & l)))
       If marque = "0" Or marque = "1" Or marque = "2" Or marque = "3" Or marque = "4" Or marque = "5" Or marque = "6" Or marque = "7" Or marque = "8" Or marque = "9" Then marque = "=" & marque
       Range("A" & l) = marque
       If C <> 3 And Mid(marque, 1, 1) <> "=" And Mid(marque, 1, 1) <> "&" Then Exit Sub
     'Sous totaux
       If marque = "" Then
         Range("B" & l & ":C" & l) = ""
         Union(Range("A" & l & ":C" & l), Range("E" & l & ":E" & l)).Interior.ColorIndex = 16
         GoTo saute_err
       Else
         Range("A" & l & ":C" & l).Interior.ColorIndex = 19
         Range("E" & l & ":E" & l).Interior.ColorIndex = 42
       End If
       If marque = "XX" Or marque = "*" Or marque = "+" Then GoTo Marquexx
       If Mid(marque, 1, 1) = "=" And Len(marque) = 2 Then GoTo MarqueEgal
       If Mid(marque, 1, 1) = "&" And Len(marque) = 2 Then
        C = 3
        Range("A" & l & ":C" & l).Interior.ColorIndex = 8
        GoTo Sortie
       End If
     
       Range("A" & l & ":E" & l).Font.Bold = False
       Range("A" & l & ":E" & l).Font.ColorIndex = xlAutomatic
       Range("E" & l).HorizontalAlignment = xlLeft
     
    'Cherche article marque
     
       repere = Val(Range("B" & l).Value + " ")
       Range("B" & l) = repere
       If repere = 0 Then
         Range("B" & l) = ""
         Range("B" & l & ":B" & l).Interior.ColorIndex = 3
         GoTo saute_err
       End If
       On Error GoTo err_marque
       Close #1
       Open "c:\devis\biblexl\" & marque & ".dom" For Random As #1 Len = 100
         K = repere * 8
         For az = 68 To 74
           If az = 70 Then az = 71
           K = K + 1
           Get #1, K, v
           If Chr(az) = "E" Then Range(Chr(az) & l).NumberFormat = "@"
           Range(Chr(az) & l) = v
         Next
       Get #1, 1, K
       If UCase(K) = "DISTRIBUTION" Then
          Range("F" & l).Interior.Pattern = xlSemiGray75
       Else
          Range("F" & l).Interior.Pattern = xlSolid
       End If
       Close #1
       GoTo saute_err
    err_marque:
       On Error GoTo 0
       Range("A" & l & ":G" & l) = ""
       Range("A" & l).Select
       Exit Sub
    Balises "corrigées" par ouskel'n'or : Tu sélectionnes ton code et tu cliques sur [Code]
    En bas de page, elles ne servent à rien du tout...
    Faut tout y dire !

  4. #24
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Programme toujours bloqué à la ligne suivante
    repere = Val(Range("B" & l).Value + " ")
    Ex : dans val(20+" ") par exemple, ton espace ne sert à rien. Est bien possible que ce soit ça qui provoque l'erreur ! D'ailleurs, je ne vois pas du tout à quoi il sert, ton espace.

    A+

  5. #25
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Programme toujours bloqué à la ligne suivante depuis 24h c'est long

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    repere = Val(Range("B" & l).Value + " ")

  6. #26
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    je vois qu'en dépit de ce que t'a expliqué ouskel'nor, tu tacharnes à calculer la valeur d'une concaténation avec un espace...

  7. #27
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Autre probleme pour ce soir, toutes les macros se réfèrent à mon disque G . Comment les repasser sur le disque C .
    Message : Impossible de trouver la macro G:\devis\xlprog\minute.xls'!Minute.

    Cela vient du fait qu'a un moment la feuille "Saisie " a été utilisée et enregistrée sur le disque G

    De plus en plus dur de comprendre ce que je dis !!!!!!!

    Mais je suis en bonne voie dans cette interminable traduction.

    Pour info, cette méthode de chiffrage de devis à laquelle se rapporte ces feuilles a d'abord été utilisé sur papier avant l'existance de l'informatique industrielle puis sur Apple II vers 1980 puis adaptée à Excel5 vers 1995 et enfin je tente de l'adapter à Excel 2003 sous Xp; le développeur de l'époque ayant disparu de la circulation.Et en plus je n'y connais rien en VB.Mais je ne désespère pas . Nous avançons à petits pas, mais surement.
    MJM

  8. #28
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    C'est le mieux que je puisse faire comme espace. A l'enregistrement tout est remis comme çi dessous et ca bloque

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    repere = Val(Range("B" & l).Value + "")

  9. #29
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Comme ca cça passe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    repere = Val(Range("B" & l).Value + "")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    repere = Val(Range("B" & l).Value)
    Autre probleme pour la nuit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Workbooks("Minute.xls").DialogSheets("Lib_sTot").DrawingObjects("Case d'option 14").Value = xlOn

  10. #30
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    pour le probléme de la nuit il me semble t'avoir déjà dit de remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .....DrawingObjects("Case d'option 14")...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ....DrawingObjects("Option Button 14")...
    en fait dans ton projet tu fais recherche/remplace projet complet :

    "Case d'option
    par
    "Option Button

  11. #31
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Je réponds à ça :

    Message : Impossible de trouver la macro G:\devis\xlprog\minute.xls'!Minute.
    Si tu sais où se trouve la macro "Minute", tu as le choix mais je ne propose que la solution qui semble la plusse mieux sioux :
    Tu fais une sauvegarde du module la contenant (exporter le module dans VBEditor) et tu fais un import dans ton nouveau projet.
    Ensuite tu supprimes l'adresse de la commande de ton ancien fichier pour ne laisser sur la ligne de ton nouveau projet que le nom de la macro.
    Si c'était "Call G:\devis\xlprog\minute.xls'!Minute", tu remplaces par "Minute"
    Et ça suffit.

    Maintenant, si tu ne sais pas où est la macro minute et qu'elle est censée faire quelque chose dans ton nouveau fichier, et que tu ne sais pas quoi... T'es pas bien du tout...

    A+

  12. #32
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Bonjour Bbil
    Bonne réponse pour "Option Button. Mais voici la suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if CInt(quantite) <> quantite Then Range("C" & l).NumberFormat = "###0,00;[rouge]-###0,00;""""" Else Range("C" & l).NumberFormat = "###0;[Rouge]-###0;"""""
    Rouge ou Red ne change rien !

  13. #33
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    ben ? pour moi suffit de mettre [red] à la place de [rouge] ...,

    tu pourrai nous dire le message d'erreur ... ou le probléme...? avant de te répondre l'on doit toujours commencer par essayer de deviner quel est le probléme !!

  14. #34
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Bonjour bbil
    Apres Else tout est surligné en jaune et le message qui apparait parfois est :Office ne parvient pas à utiliser le format de nombre ...

    La cellule correspondande s'affiche d'ailleur en rouge en tant q'erreur dans le développement du programme.Le rouge correspondant à la saisie d'un article qui n'existe pas danx un fichier bible!!!.Pas facile à expliquer
    MJM

  15. #35
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Ca ne donne rien de bon, voici le Sub complet si quelqu'un a une idé
    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
     
    '******************** Sub-Presentation
    Sub presentation(l, C)
       'MAJ tableau de calcul & CALCULS
       If Range("C3") = "ON" Or Trim(Range("F" & l)) = "" Then Range("F" & l) = Range("C2").Value
       On Error GoTo errpres
        quantite = CDbl(0 + Range("C" & l).Value + " ")
    retourerr:
       On Error GoTo 0
     
       If CInt(quantite) <> quantite Then Range("C" & l).NumberFormat = "###0,00;[rouge]-###0,00;""""" Else Range("C" & l).NumberFormat = "###0;[rouge]-###0;"""""
       Select Case Range("F" & l).Value
         Case 1
           Range("R1") = 1
         Case 2
           Range("U1") = 1
         Case 3
           Range("X1") = 1
       End Select
       If C = 3 Then
         Range("A" & l & ":M" & l).Select
           Selection.Borders(xlRight).Weight = xlThin
           Selection.Borders(xlBottom).Weight = xlThin
         Range("M" & l).Select
         With Selection.Interior
           .ColorIndex = 33
           .Pattern = xlDown
           .PatternColorIndex = 4
         End With
       End If
       Range("D" & l & ":D" & l).Interior.ColorIndex = 40
       Range("F" & l & ":F" & l).Interior.ColorIndex = 37
       Range("G" & l & ":J" & l).Interior.ColorIndex = 33
       Exit Sub
    errpres:
       quantite = 0
       Range("C" & l & ":C" & l).Interior.ColorIndex = 3
       Resume retourerr
    End Sub

  16. #36
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Et voila le bug suivant, sans message d'erreur, seulement un point d'arrêt du programme.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
       Workbooks("Minute.xls").Sheets("Lib_sTot").DrawingObjects("ListBoxes 28").ListFillRange = "Libellés!A1:A" & Sheets("Libellés").Range("B1").Value
    Le probleme précédent n'étant pas résolu
    Bon appetit
    MJM

  17. #37
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par bbil
    ben ? pour moi suffit de mettre [red] à la place de [rouge] ...,

    tu pourrai nous dire le message d'erreur ... ou le probléme...? avant de te répondre l'on doit toujours commencer par essayer de deviner quel est le probléme !!

  18. #38
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Red à la place de rouge c'est pire

    A ce soir peut être
    MJM

  19. #39
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Oui, remplace sheets par worksheets

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks("Minute.xls").WorkSheets("Lib_sTot").DrawingObjects("ListBoxes 28").ListFillRange = "Libellés!A1:A" & WorkSheets("Libellés").Range("B1").Value
    Tu dis

  20. #40
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Red à la place de rouge c'est pire
    Juste pour dire... Très parlant comme renseignement... Très utile pour t'aider...

    A+ quand même

Discussions similaires

  1. [E-03]- Migration d'Excel 2000 et XP vers Excel 2003
    Par sagara95 dans le forum Excel
    Réponses: 4
    Dernier message: 09/01/2009, 14h31
  2. asp.net export vers excel 2003
    Par splach dans le forum ASP
    Réponses: 2
    Dernier message: 19/03/2008, 12h27
  3. [Export] De Access vers Excel (2003)
    Par matfeb dans le forum VBA Access
    Réponses: 6
    Dernier message: 03/03/2008, 15h07
  4. SOucis d'export vers excel 2003
    Par nico18987 dans le forum SharePoint
    Réponses: 0
    Dernier message: 05/09/2007, 09h45
  5. Problem avec l'export vers excel 2003
    Par nico18987 dans le forum SharePoint
    Réponses: 4
    Dernier message: 26/04/2007, 16h57

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