Insere une ligne dans un tableau excel (vba)

Fermé
pixel - 19 mai 2010 à 09:27
 pixel - 20 mai 2010 à 12:55
Bonjour,

je cherche a insere une ligne dans ce code :
Workbooks(Fichier).Activate
If InStr(1, CStr(Range("C7").Value), "613") <> 0 Then
Workbooks("Saisie.xls").Sheets("Tab récup données").Activate
i = 1
While Not IsEmpty(Cells(i, 1))
i = i + 1
Wend
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 1).Value = Range("C7").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 2).Value = Range("H10").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 3).Value = Range("B4").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 4).Value = Range("H5").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 5).Value = Range("H6").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 6).Value = Range("B5").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 7).Value = Range("C10").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 8).Value = Range("D57").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 10).Value = Range("I56").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 11).Value = Range("I57").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 12).Value = Range("I58").Value

ActiveCell.Offset(1, 1).Select
ActiveCell.EntireRow.Insert
End If


mais ca ne marche pas. pouvez vous svp m'aider merci d'avance

A voir également:

1 réponse

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 311
19 mai 2010 à 11:22
Bonjour

ca ne marche pas OK, mais qui quoi où ?

Activecell à la fin correspond à quelle cellule dans quelle feuille de quel fichier ?
-1
j'ai reflechi entre temp et j'ai plutot mis sa et sa marche après est ce que c'est juste je sé pas

'Si cellule "C7" commençant par 613
Workbooks(Fichier).Activate
If InStr(1, CStr(Range("C7").Value), "613") <> 0 Then
Workbooks("Saisie.xls").Sheets("Tab récup données").Activate
i = 1
While Not IsEmpty(Cells(i, 1))
i = i + 1
Wend
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 1).Value = Range("C7").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 2).Value = Range("H10").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 3).Value = Range("B4").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 4).Value = Range("H5").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 5).Value = Range("H6").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 6).Value = Range("B5").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 7).Value = Range("C10").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 8).Value = Range("D57").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 10).Value = Range("I56").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 11).Value = Range("I57").Value
Workbooks("Saisie.xls").Sheets("Tab récup données").Cells(i, 12).Value = Range("I58").Value
'Insérer une ligne dans le tableau "Tab récup données" fichier "Saisie"
Worksheets("Tab récup données").Rows(2).Insert Shift:=xlShiftDown

End If
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 311
19 mai 2010 à 12:33
re,

autre macro plus brève
Dim source, lig As Long
If Range("C7") Like "613*" Then
source = Array(Range("C7").Value, Range("H10").Value, Range("B4").Value, Range("H5").Value, Range("H6").Value, _
                    Range("B5").Value, Range("C10").Value, Range("D57").Value, "", Range("I56").Value, Range("I57").Value, Range("I58").Value)

Workbooks("Saisie.xls").Sheets("Tab récup données").Activate
lig = Range("A65536").End(xlUp).Row + 1
Range(Cells(lig, 1), Cells(lig, 12)) = source
Rows(2).Insert
End If


tu aurais très intérêt à spécifier le nom de l'onglet de C7 (maintenance de ton appli)
je vois pas trop l'utilité de descendre les résultats (rows(2).insert) à chaque manip mais...
0
merci je viens d'essayer et aucune donnée ne s'affiche
0
est ce que je peux te poser une autre question stp?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 311
19 mai 2010 à 14:06
merci je viens d'essayer et aucune donnée ne s'affiche

Pourtant j'avais essayé sur une maquette et c'était OK

est ce que je peux te poser une autre question stp?

tu peux toujours, mais je vais bient^t partir pour 2 ou 3 heures...
0