Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1659 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Somme d'un nbre évolutif d'elmts &ref à une feuille cree ds la macro

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Somme d'un nbre évolutif d'elmts &ref à une feuille cree ds la macro

n°1177138
tootwi
Posté le 16-08-2005 à 15:22:37  profilanswer
 

Bonjour,
j'ai 2 problèmes dans le programme suivant :
 
1) Je n'arrive pas à remplir la nouvelle colonne de la page synthese avec les données de la feuille nom_affaire que j'ai crée, il doit y avoir un probleme de reference là (il faut que je rentre une formule car je dois remplir la feuille "nom_affaire" apres la fin de l'execution de la macro, et "nom_affaire" est une donnée rentrée par l'utilisateur dans un userbox, donc je sais pas si c'est possible dans le monde merveilleux de visual basic...)
 
2) Je voudrais mettre une formule de moyenne dans la colonne C (d'où la boucle sur i = l'indice de ligne), mais je m'embrouille dans les " & et tout ça...
 
Sub Creer_nouvelle_affaire()
    Boite_nom_affaire.Show
 
Dim nom_affaire As String
nom_affaire = Boite_nom_affaire.TextBox1.Value
 
Sheets("Synthese" ).Select
Sheets.Add.Name = nom_affaire
 
'...    
 
    ' Remplissage des données dans la feuille de synthèse :
     
    Sheets("Synthese" ).Select
   
    With Sheets("Synthese" )
     .[D:D].Insert Shift:=xlToRight
     .[D3] = nom_affaire
     '.[D4] = [ nom_affaire !M4] ' cette instruction renvoie #VALEUR!
     .[D4].Formula = Sheets(nom_affaire).Range("M4" ) 'celle là renvoie toujours zéro
    End With
'...
       
    'Formule de moyenne :
     
    Dim nbreaffaires As Integer
    nbreaffaires = Sheets.Count - 2
    Dim dernier_ind As Integer
    dernier_ind = Sheets.Count + 1
   
' dans la boucle suivante j'essaie de mettre en C4 la moyenne des cellules remplies sur la ligne 4 (il y a nbreaffaires cases remplies après la case C4)  
   For i = 4 To 31
     Cells(i, 3).Select
     'Cells(i, 3) = "=Sum(   Cells(&i&, 4)  :  Cells(&i&, &dernier_ind& )  ) / " & nbreaffaires & "  "
     Cells(i, 3) = "=sum (Range(ActiveCell(1, 2).adress, ActiveCell(1, 3).Adress))/ " & nbreaffaires & ""
   Next i
         
End Sub
 
 
 
voilà, si vous pouviez me dire ce qui ne marche pas dans cette macro, ça m'aiderai beaucoup!!
 
tootwi

mood
Publicité
Posté le 16-08-2005 à 15:22:37  profilanswer
 

n°1177210
watashi
La démotivation : JAMAIS !
Posté le 16-08-2005 à 16:37:00  profilanswer
 

Salut tootwi
 
pour ton premier problème :


     '.[D4] = [ nom_affaire !M4] ' [#ff3800]cette instruction renvoie #VALEUR![/#ff3800]
     .[D4].Formula = Sheets(nom_affaire).Range("M4" ) [#ff1c00]'celle là renvoie toujours zéro[/#ff1c00]


 
la formule pour ton D4 est plutôt :

Code :
  1. .[D4].Formula= "=" & nom_affaire & "!RC[9]"


pour ton deuxième problème

   
    'Formule de moyenne :
     
    Dim nbreaffaires As Integer
    nbreaffaires = Sheets.Count - 2
    Dim dernier_ind As Integer
    dernier_ind = Sheets.Count + 1
   
' [#00aa55]dans la boucle suivante j'essaie de mettre en C4 la moyenne des cellules remplies sur la ligne 4 (il y a nbreaffaires cases remplies après la case C4[/#00aa55])  
   For i = 4 To 31
     Cells(i, 3).Select
     'Cells(i, 3) = "=Sum(   Cells(&i&, 4)  :  Cells(&i&, &dernier_ind& )  ) / " & nbreaffaires & "  "
     Cells(i, 3) = "=sum (Range(ActiveCell(1, 2).adress, ActiveCell(1, 3).Adress))/ " & nbreaffaires & ""
   Next i

       
regarde si ça marche pas plus simplement :

Code :
  1. Dim nbreaffaires
  2.     nbreaffaires = ActiveWorkbook.Sheets.Count - 2
  3.     Range("C4" ).Select
  4.     ActiveCell.FormulaR1C1 = "=AVERAGE(RC[1]:RC[" & c & "])"


 
Et ce bien ça ?

n°1177231
tootwi
Posté le 16-08-2005 à 16:49:14  profilanswer
 

Super merci ça marche!!!

n°1177287
watashi
La démotivation : JAMAIS !
Posté le 16-08-2005 à 17:41:07  profilanswer
 

Cool !  :bounce:  
 
Marque résolu dans le titre du sujet ça pourra en aider d'autres  
 
 :pt1cable:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Somme d'un nbre évolutif d'elmts &ref à une feuille cree ds la macro

 

Sujets relatifs
récupérer du contenu XML d'une fonction PHP dans une feuille XSLT ?Comment faire cette macro?
MACRO inopérante si déplacer[VBA - Word]: Lancer une macro en mode console
probleme de Boucle avec une macro!!!![VBA Excel - resolu] ajout d'une feuille
Macro Excel --> Ajouter un caractère[VBA][EXC] Fonction de recalcul d'une feuille Excel sous VBA ?
Excel, saisie semie automatique à partir d'une autre feuilleexecuter une macro à partir d'un double clique dans une feuille excel
Plus de sujets relatifs à : Somme d'un nbre évolutif d'elmts &ref à une feuille cree ds la macro


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR