Fin pour compléter ma macro

Résolu/Fermé
Marie Chant Messages postés 86 Date d'inscription lundi 24 mars 2014 Statut Membre Dernière intervention 19 avril 2024 - 18 sept. 2014 à 21:21
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 - 18 sept. 2014 à 23:32
Bonjour,

Jai fais une macro et mon nombre de ligne était de 20.. J'ai dit a la macro Colonne P (Colone M-O=P) solde dans P jusqu'en bas .
Ici ma feuille n'a que lignes. Pour la prochaine fois, j'ai plus de 100 et cela va varier d'une fois a l'autre. Est-ce possible s.v.p. de dire a la macro inscrire la réponse dans P jusqu'a la fin des lignes dans un tableau?
J'ai refais la meme macro sur un tableau de 100 et ca l'a arreté a 20 lignes.

est-ce possible s.v.p. de m'aider merci beaucoup

alors pour destination
ActiveCell.FormulaR1C1 = "Solde"
Range("P2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
Range("P2").Select
Selection.ClearContents
Range("N1").Select
ActiveCell.FormulaR1C1 = "Débits"
Range("O1").Select
ActiveCell.FormulaR1C1 = "Crédits"
Range("P2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
Range("P2").Select
Selection.AutoFill Destination:=Range("P2:P20")
Range("P2:P20").Select


Voici la macro complete


Sheets("FNDWRR").Select
Sheets("FNDWRR").Copy Before:=Sheets(1)
Rows("1:13").Select
Selection.Delete Shift:=xlUp
ActiveWindow.SmallScroll Down:=-12
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 6
Columns("J:O").Select
Selection.Delete Shift:=xlToLeft
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 5
Columns("G:L").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Columns("F:F").Select
Selection.TextToColumns Destination:=Range("F1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:=".", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, _
1), Array(6, 1), Array(7, 1)), DecimalSeparator:=".", ThousandsSeparator:=",", _
TrailingMinusNumbers:=True
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").EntireColumn.AutoFit
Rows("1:1").Select
Range("E1").Activate
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Columns("P:P").Select
Selection.Delete Shift:=xlToLeft
Range("P1").Select
ActiveCell.FormulaR1C1 = "Solde"
Range("P2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
Range("P2").Select
Selection.ClearContents
Range("N1").Select
ActiveCell.FormulaR1C1 = "Débits"
Range("O1").Select
ActiveCell.FormulaR1C1 = "Crédits"
Range("P2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
Range("P2").Select
Selection.AutoFill Destination:=Range("P2:P20")
Range("P2:P20").Select
Range("A1").Select
ActiveCell.FormulaR1C1 = "P"
Range("B1").Select
ActiveCell.FormulaR1C1 = "C"
Range("C1").Select
ActiveCell.FormulaR1C1 = "l"
Range("D1").Select
ActiveCell.FormulaR1C1 = "É"
Range("B1").Select
ActiveCell.FormulaR1C1 = "S"
Range("C1").Select
ActiveCell.FormulaR1C1 = "C2"
Range("D1").Select
ActiveCell.FormulaR1C1 = "L"
Range("E1").Select
ActiveCell.FormulaR1C1 = "É1"
Range("F1").Select
ActiveCell.FormulaR1C1 = "En"
Range("G1").Select
ActiveCell.FormulaR1C1 = "U"
Range("H1").Select
ActiveCell.FormulaR1C1 = "Ct"
Range("I1").Select
ActiveCell.FormulaR1C1 = "B"
Range("J1").Select
ActiveCell.FormulaR1C1 = "P"
Range("K1").Select
ActiveCell.FormulaR1C1 = "Pa"
Range("L1").Select
ActiveCell.FormulaR1C1 = "Pr"
Range("M1").Select
ActiveCell.FormulaR1C1 = "S1"
Range("M2").Select
End Sub
A voir également:

1 réponse

eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 213
Modifié par eriiic le 18/09/2014 à 23:33
Bonjour,

Tu as l'icone <> pour mettre en forme ton code.

Avec la colonne A qui a toutes les lignes avec une donnée :
    Dim derlig As Long
    derlig = Cells(Rows.Count, "A").End(xlUp).Row
    Range("P2:P" & derlig).Formula = "=M2-O2"

J'ai mis M2-O2 comme demandé, à lire ton code ça doit plutôt être N2-O2
https://www.cjoint.com/?DIsxKoTRag8

eric

En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
0