Opération sur les colonnes macro excel

  • Initiateur de la discussion Initiateur de la discussion fabdu25
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fabdu25

XLDnaute Nouveau
Bonjour,

Je suis novice en écriture de macros avec VB et j’aimerai avoir de l’aide par rapport au problème suivant :
J’ai un système de régulation (pompe à chaleur, centrale traitement d’air, ballon de stockage…) avec un relevé de mesure (température, débit…) toutes les semaines….cela représente à peu près 10000 lignes par colonne et j’aimerai donc pouvoir « automatiser » le calcul de certaines grandeurs à l’aide de macros (coefficient de performance, puissances…).
Je vais essayer de décrire les différentes étapes le plus précisément possible pour que vous saisissiez bien la démarche :
1) Calcul de la puissance produite par le système : 1.16*colonne B* (colonne C-colonne E) => à mettre colonne P (faire sur les colonnes entières => jusqu’à la dernière ligne où il y a une valeur)
2) Calcul de la puissance consommé : colonne H* colonne I => mettre colonne Q
3) Calcul du COP (coefficient de performance) : il faut inclure une condition IF
=> Si la colonne I<=3 et que colonne Q=0 alors COP=0 sinon COP= (colonne P /colonne Q) (ce sont deux colonnes créent précédemment) => A mettre dans colonne R
Je vous mets l’excel qui va avec (pour que vous compreniez les différents noms des colonnes)
Merci d’avance pour l’aide que vous allez m’apporter.
Cordialement,
 

Pièces jointes

Re : Opération sur les colonnes macro excel

Bonjour fabdu25 et bienvenu sur la forum

Le nom de la feuille sera a adapter.

VB:
Sub test()
Dim LstRw As Long
With Sheets("Convert_SemN°9")
    'LstRow =  Numéro de la dernière ligne remplie en colonne A (1)
    LstRw = .Cells(.Rows.Count, 1).End(xlUp).Row
    .Range("$P$4:$P$" & LstRw).FormulaLocal = "=1,16*B4*(C4-E4)"
    .Range("$Q$4:$Q$" & LstRw).FormulaLocal = "=H4*I4"
    .Range("$R$4:$R$" & LstRw).FormulaLocal = "=SI(ET(I4<=3;Q4=0);0;P4/Q4)"
End With
End Sub
Cordialement
 
Re : Opération sur les colonnes macro excel

Merci beaucoup pour cette proposition qui m'a l'air de bien marcher (en plus la syntaxe est vraiment compréhensible). Je vais maintenant l'appliquer à mon système (et voir les choses à améliorer).
Encore merci pour votre aide précieuse.

Cordialement,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour