Insere une ligne dans un tableau excel (vba)

pixel -  
 pixel -
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

1 réponse

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour

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

    Activecell à la fin correspond à quelle cellule dans quelle feuille de quel fichier ?
    -1
    1. Pixel
       
      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
    2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      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
    3. Pixel
       
      merci je viens d'essayer et aucune donnée ne s'affiche
      0
    4. Pixel
       
      est ce que je peux te poser une autre question stp?
      0
    5. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      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