VBA EXCEL 2003 - Probleme de tableau

geraldao Messages postés 9 Statut Membre -  
geraldao Messages postés 9 Statut Membre -
Bonjour,voila (pour info je débute), j'ai un tableau avec 20 colonnes et 70 lignes sous excel => avec la fonction EXCEL : INSERTION / NOM / CREER j'ai déterminer la ligne du haut et la colonne de gauche comme référence du tableau !

Sous VBA = un formulaire s'ouvre sur lequel on choisi une colonne en clikant sur un des 20 checkbox
et ensuite il faut choisir une ligne dans une listbox (sur 70 au choix)
et enfin on attribu un chiffre correspondant à une note !

Dans VBA = ma formule RANGE(COLONNE & " " & LIGNE).value = NOTE crée un bug et mon programme s'arrete ???

Je suis bloqué !! Quelqu'un a une explication !!

Merci à vous.
Configuration: Windows Vista
Internet Explorer 7.0

7 réponses

  1. Polux31 Messages postés 7219 Statut Membre 1 204
     
    bonjour,

    Il nous faudrait un peu plus d'éléments pour pouvoir t'aider ...

    Y a t il un msg d'erreur ? Si oui, lequel ? ... Peut-on avoir le code de la procédure ou de la fonction contenant le beug ...

    ;o)

    Polux
    0
  2. geraldao Messages postés 9 Statut Membre
     
    'imputation du choix du site a la variable nommée SITE
    Site = listeursite.Value

    'imputation en P2
    If boutonp2 = True Then Travaux = "P2"

    Range(Nom & " " & Site).Value = Nbheure < => C'est a ce moment que le prog s'arrete

    Range("imputation" & " " & Site).Value = Travaux

    LE MESSAGE D ERREUR EST LE SUIVANT

    ERREUR D EXECUTION 1004
    La méthode RANGE de l'objet Global à échoué

    Voila Mr POLUX, cela t'aide t-il ?
    Te faut il d'autre infos ?

    A bientot
    0
  3. Utilisateur anonyme
     
    Elle fonctionne ???
    Je pensais connaître assez à fond VBA, mais ça j'ai jamais vu. Enfin si ça marche ...
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bonsoir,

      Si si, espace est l'opérateur d'intersection de plages pour excel. Comme ; (; pour les feuilles en français et , en vba) est l'opérateur d'union de plages.
      eric
      0
  4. Polux31 Messages postés 7219 Statut Membre 1 204
     
    bonsoir,

    Je pense qu'il s'agit d'un problème de déclaration de l'objet. Il faut, je crois, si ma mémoire est bonne utiliser :
    WorkSheets("Feuil1").Range(banane vert).value = 20

    ;o)

    polux
    0
    1. geraldao Messages postés 9 Statut Membre
       
      Non plus, cela ne change rien !!!!!
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonsoir,

    es-tu sûr que nom et site soient bien des string, et qu'ils correspondent à des noms réellement bien déclarés dans ton classeur ?
    De plus il faut que l'intersection existe, bien que l'erreur serait différente.
    A-priori ta syntaxe est bonne, voici un exemple qui fonctionne si les noms sont bien déclarés:
    Sub test()
    fruit = "pomme"
    coul = "vert"
    a = Range(fruit & " " & coul).Value ' recup valeur
    Range(fruit & " " & coul).Value = 8 ' écrire valeur
    End Sub

    Sinon dépose ton fichier (s'il n'est pas trop gros) sur www.cijoint.fr et colle le lien ici

    eric
    0
    1. geraldao Messages postés 9 Statut Membre
       
      salut eriiic, d'apres ton exemple il faut d'abord "récupérer" la valeur et ensuite "écrire" la valeur ou c'est juste une explication !!!

      Ps : il existe donc une différence entre le fait de mettre le signe "=" avant ou aprés le code ??
      0
      1. geraldao Messages postés 9 Statut Membre > geraldao Messages postés 9 Statut Membre
         
        http://www.cijoint.fr/cjlink.php?file=cj200802/cij5020845954502.xls.

        voila mon fichier si tu as une minute !!!! sois indulgent sur l'ensemble du projet = c'est mon premier !! ;-)

        pour lancer l'application il faut clicker sur le bouton en haut d'une feuille et ensuite sur le userform il faut à la fin selectionner "P2"

        Je nage !!!
        0
  7. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonsoir,

    C'était juste un exemple.
    La prochaine fois dis où il faut regarder et comment on atteint ce point... J'aime les devinettes mais avec certaines limites

    Sur ta feuille fais menu 'selection / atteindre' "DEVIGNE" et tu comprendras.
    D'autre part dans vba site = "RESID. LES ORCHIDEES " alors que ton nom est "RESID. LES ORCHIDEES" ce qui n'a rien à voir.

    Ca c'est juste pour t'expliquer le non fonctionnement mais abandonne toute idée de gérer tes cellules ainsi. Tu te compliques la vie pour rien avec des centaines de noms.
    Nomme une seule cellule en haut à gauche de la zone qui t'interesse et atteints les autres avec .offset(ligne, colonne). Tu as le droit de regarder l'aide excel sur cette propriété.
    D'autre part évite absolument de fusionner des cellules. C'est galère pour un simple copier/coller et c'est chi...t en vba.

    Bon courage car tu as du boulot à tout reprendre là ;-)

    eric
    0
  8. geraldao Messages postés 9 Statut Membre
     
    Merci et désolé .....................effectivement moi je connais bien mon tableau, je ne m'en suis pas rendu compte !!

    Tu viens de me sapper le moral, mais je ne désespère pas !!!

    je continu a apprendre
    0