Exécuter un Sub tant qu'il y a du texte
Rgt78
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite exécuter le sub suivant tant qu'il y a du texte dans la colonne A (à partir de A2)
et clearer les autres colonnes s'il n'y a rien en A. Bien sur il faudra remplir D, E, H, I, J et B mais je souhaite me baser sur A qui sera toujours rempli avec le ticker.
Pour l'instant il s’exécute seulement sur les lignes 2 et 3
Qu'elle boucle puis-je utiliser?
Merci
Public Sub OptionPricer()
Dim St As Double
Dim K As Double
Dim T As Double
Dim R As Double
Dim Sd As Double
Dim Option_Type As String
St = Worksheets("Option Portfolio").Range("D2").Value
K = Worksheets("Option Portfolio").Range("E2").Value
T = Worksheets("Option Portfolio").Range("H2").Value
R = Worksheets("Option Portfolio").Range("I2").Value
Sd = Worksheets("Option Portfolio").Range("J2").Value
Option_Type = Worksheets("Option Portfolio").Range("B2").Value
Worksheets("Option Portfolio").Range("C2").Value = OptionPrice(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("K2").Value = DeltaLetter(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("L2").Value = GammaLetter(St, K, T, R, Sd)
Worksheets("Option Portfolio").Range("M2").Value = ThetaLetter(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("N2").Value = RhoLetter(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("O2").Value = VegaLetter(St, K, T, R, Sd)
Dim St2 As Double
Dim K2 As Double
Dim T2 As Double
Dim R2 As Double
Dim Sd2 As Double
Dim Option_Type2 As String
St2 = Worksheets("Option Portfolio").Range("D3").Value
K2 = Worksheets("Option Portfolio").Range("E3").Value
T2 = Worksheets("Option Portfolio").Range("H3").Value
R2 = Worksheets("Option Portfolio").Range("I3").Value
Sd2 = Worksheets("Option Portfolio").Range("J3").Value
Option_Type2 = Worksheets("Option Portfolio").Range("B3").Value
Worksheets("Option Portfolio").Range("C3").Value = OptionPrice(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("K3").Value = DeltaLetter(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("L3").Value = GammaLetter(St2, K2, T2, R2, Sd2)
Worksheets("Option Portfolio").Range("M3").Value = ThetaLetter(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("N3").Value = RhoLetter(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("O3").Value = VegaLetter(St2, K2, T2, R2, Sd2)
End Sub
Je souhaite exécuter le sub suivant tant qu'il y a du texte dans la colonne A (à partir de A2)
et clearer les autres colonnes s'il n'y a rien en A. Bien sur il faudra remplir D, E, H, I, J et B mais je souhaite me baser sur A qui sera toujours rempli avec le ticker.
Pour l'instant il s’exécute seulement sur les lignes 2 et 3
Qu'elle boucle puis-je utiliser?
Merci
Public Sub OptionPricer()
Dim St As Double
Dim K As Double
Dim T As Double
Dim R As Double
Dim Sd As Double
Dim Option_Type As String
St = Worksheets("Option Portfolio").Range("D2").Value
K = Worksheets("Option Portfolio").Range("E2").Value
T = Worksheets("Option Portfolio").Range("H2").Value
R = Worksheets("Option Portfolio").Range("I2").Value
Sd = Worksheets("Option Portfolio").Range("J2").Value
Option_Type = Worksheets("Option Portfolio").Range("B2").Value
Worksheets("Option Portfolio").Range("C2").Value = OptionPrice(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("K2").Value = DeltaLetter(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("L2").Value = GammaLetter(St, K, T, R, Sd)
Worksheets("Option Portfolio").Range("M2").Value = ThetaLetter(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("N2").Value = RhoLetter(St, K, T, R, Sd, Option_Type)
Worksheets("Option Portfolio").Range("O2").Value = VegaLetter(St, K, T, R, Sd)
Dim St2 As Double
Dim K2 As Double
Dim T2 As Double
Dim R2 As Double
Dim Sd2 As Double
Dim Option_Type2 As String
St2 = Worksheets("Option Portfolio").Range("D3").Value
K2 = Worksheets("Option Portfolio").Range("E3").Value
T2 = Worksheets("Option Portfolio").Range("H3").Value
R2 = Worksheets("Option Portfolio").Range("I3").Value
Sd2 = Worksheets("Option Portfolio").Range("J3").Value
Option_Type2 = Worksheets("Option Portfolio").Range("B3").Value
Worksheets("Option Portfolio").Range("C3").Value = OptionPrice(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("K3").Value = DeltaLetter(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("L3").Value = GammaLetter(St2, K2, T2, R2, Sd2)
Worksheets("Option Portfolio").Range("M3").Value = ThetaLetter(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("N3").Value = RhoLetter(St2, K2, T2, R2, Sd2, Option_Type2)
Worksheets("Option Portfolio").Range("O3").Value = VegaLetter(St2, K2, T2, R2, Sd2)
End Sub
A voir également:
- Exécuter un Sub tant qu'il y a du texte
- Texte de chanson gratuit pdf - Télécharger - Vie quotidienne
- Transcription audio en texte word gratuit - Guide
- Excel cellule couleur si condition texte - Guide
- Mettre un texte en majuscule - Guide
- Texte barré whatsapp - Guide
1 réponse
Bonjour,
et clearer les autres colonnes s'il n'y a rien en A.
Moi pas comprendre
et clearer les autres colonnes s'il n'y a rien en A.
Moi pas comprendre
'boucle sur la colonne A Public Sub OptionPricer() Dim St As Double Dim K As Double Dim T As Double Dim R As Double Dim Sd As Double Dim Option_Type As String With Worksheets("Option Portfolio") derlig1 = .Range("A" & Rows.Count).End(xlUp).Row For N = 2 To derlig1 St = .Range("D" & N).Value K = .Range("E" & N).Value T = .Range("H" & N).Value R = .Range("I" & N).Value Sd = .Range("J" & N).Value Option_Type = .Range("B" & N).Value .Range("C" & N).Value = OptionPrice(St, K, T, R, Sd, Option_Type) .Range("K" & N).Value = DeltaLetter(St, K, T, R, Sd, Option_Type) .Range("L" & N).Value = GammaLetter(St, K, T, R, Sd) .Range("M" & N).Value = ThetaLetter(St, K, T, R, Sd, Option_Type) .Range("N" & N).Value = RhoLetter(St, K, T, R, Sd, Option_Type) .Range("O" & N).Value = VegaLetter(St, K, T, R, Sd) Next N End With End Sub
Maintenant je cherche à clearcontent les lignes ou il n'y a rien.
Par exemple si j'ai rentré 4 options puis que je repasse à 3 comment faire pour que la macro efface la quatrième ligne juste en vidant la cellule A.
Merci encore
Comprends toujours pas votre affaire de
Maintenant je cherche à clearcontent les lignes ou il n'y a rien.
Admettons que j'ai 2 options, j'en ajoute une troisième en remplissant A4, D4, E4, H4, I4, J4, B4. Le sub me calcule le prix et les greeks c'est parfait.
Maintenant je souhaite effacer la troisième option, j'efface A4. Comment faire pour que le sub efface le reste de la ligne si A est vide lorsqu'on le relance?
Ai compris, aurait été plus simple d'écrire ceci:
Ne pas copier la ligne si cellule colonne À vide
À chaque relance il faut donc faire une raz de la ligne si À vide.
Je vous fais ou vous le faites ?