Génération écritures : pb VBA

mikeo

XLDnaute Occasionnel
Bonsoir les amis du forum,

J'ai essayé de faire une application pour ma compta mais je me suis mélangé dans mes lignes. Le résultat n'est pas celui escompté. Ci-après le code et j'ai joint le fichier pour dire ce que je cherche.

Code:
Private Sub CommandButton1_Click()

Dim i As Integer, n As Integer

    n = Range("A65535").End(xlUp).Row
For i = n To 3 Step -1
    Rows(i).Copy 'copier la ligne
    Selection.Insert Shift:=xlDown 'insérer 1 ligne après la ligne copiée
 i = i + 1 'descendre d'une ligne
     Range("B" & i) = "CA" ' modifier donnée sur colonne B
     Range("C" & i) = "530000" 'modifier donnée sur colonne C
i = i - 1 ' remonter d'une ligne
    Range("B" & i) = "CA" ' modifier donnée sur colonne B
    Range("F" & i) = Range("G" & i).Value ' copier G sur F et supprimer G
    Range("G" & i) = ""
Next i ' remonter d'une ligne
    
 
End Sub

Merci et bon noel
 

Pièces jointes

  • generation CA.xls
    37 KB · Affichages: 47
  • generation CA.xls
    37 KB · Affichages: 51
  • generation CA.xls
    37 KB · Affichages: 52

Softmama

XLDnaute Accro
Re : Génération écritures : pb VBA

Bonsoir mikeo,

Tu peux modifier ton code ainsi :

VB:
Sub test()
Dim c As Range
Set c = Range("A65536").End(xlUp)
Do While c <> ""
    c(2, 1).EntireRow.Insert
    c.EntireRow.Copy c(2, 1)
    c(1, 2) = "CA"
    c(2, 2) = "CA"
    c(2, 3) = 530000
    c(2, 6) = 0
    c(1, 6) = c(1, 7)
    c(2, 7) = c(1, 7)
    c(1, 7) = ""
    Set c = c(0, 1)
Loop
End Sub

cf. fichier joint.
 

Pièces jointes

  • generation CA.xls
    34.5 KB · Affichages: 49
  • generation CA.xls
    34.5 KB · Affichages: 56
  • generation CA.xls
    34.5 KB · Affichages: 56

Discussions similaires

Statistiques des forums

Discussions
312 331
Messages
2 087 352
Membres
103 526
dernier inscrit
HEC