coller les cellules C:K

PHILIP

XLDnaute Occasionnel
Bojour à tous,

je recois un classeur comprenant les commandes detaillées de clients j'ai une macro qui me permets d'introduire une ligne entre chaque client puis qui me calcule le poids et le nombre de colis dans cette ligne ajoutée et la teinte en bleue pour la distinguer . toutefois je souhaiterai aussi coller les cellules C:K de la ligne N-1 comment puis je faire ,je n'y arrive pas
voici mon code

Code:
Sub toto()
Dim Lastlig As Long, i As Long
  Application.ScreenUpdating = False
  With Worksheets("viking")   'adapter au nom de la feuille
    Lastlig = .Cells(.Rows.Count, "B").End(xlUp).Row
    For i = Lastlig To 3 Step -1
      If .Range("B" & i - 1) <> .Range("B" & i) Then .Rows(i).Insert: .Rows(i).Interior.ColorIndex = 8
    Next i
  End With
 haut_somme = 8
   For n = 10 To Range("A65536").End(xlUp).Row + 1
   If Range("A" & n) = "" Then

   For m = 1 To 2
   Selection.Font.Bold = True
       Cells(n, 13 + m) = WorksheetFunction.Sum(Range(Cells(haut_somme, 13 + m), Cells(n - 1, 13 + m)))
          Next
             haut_somme = n + 1
       End If
   Next
je joins un fichier
 

Pièces jointes

  • toto.xlsx
    10.4 KB · Affichages: 52
  • toto.xlsx
    10.4 KB · Affichages: 49
  • toto.xlsx
    10.4 KB · Affichages: 54

GuillaumA

XLDnaute Occasionnel
Re : coller les cellules C:K

PS:
Le code que j'utilise pour copier coller des données d'une feuille à une autre:


Code:
Sub MACRO()

Dim CopiedArea As Range
Dim Tablo As Worksheet
    
    Set CopiedArea = Worksheets("Feuil1").Range("C:K")
    Set Tablo = Worksheets("Feuiloutuveuxcopier")
    

    CopiedArea.Copy
    Tablo.Cells(1, 3).PasteSpecial Paste:=xlPasteValues, Transpose:=True
    Application.CutCopyMode = False
End If

 
    CopiedArea.ClearContents
    
End Sub

Après si j'ai mal compris et que c'est d'un autre classeur au tien... C'est un autre code.

Amicalement,
Guillaume
 

PHILIP

XLDnaute Occasionnel
Re : coller les cellules C:K

Bonjour Guillaume,

je vous envoie le fichier en 2003. cependant je ne souhaite copier les données dans une autre feuille mais inserer une ligne entre chaque client , copier les cellules C:K de la ligne precedent la ligne inserée n-1(partie de code qui me manque) et ensuite calculer et mettre le poids total et le nombre de colis dans cette ligne inserée je vous joins le fichier en 2003
 

Pièces jointes

  • toto.xls
    22.5 KB · Affichages: 45
  • toto.xls
    22.5 KB · Affichages: 42
  • toto.xls
    22.5 KB · Affichages: 41

patsyl60

XLDnaute Occasionnel
Re : coller les cellules C:K

Bonjour Philip, GuillaumA et le forum,

Teste le code ci dessous.

A+

Patsyl60

Code:
Sub toto()
Dim Lastlig As Long, i As Long
  Application.ScreenUpdating = False
  With Worksheets("Feuil1")   'adapter au nom de la feuille
    Lastlig = .Cells(.Rows.Count, "B").End(xlUp).Row
    For i = Lastlig To 3 Step -1
      If .Range("B" & i - 1) <> .Range("B" & i) Then
      .Rows(i).Insert: .Rows(i).Interior.ColorIndex = 8
        Range("C" & i + 1 & ":K" & i + 1).Copy Range("C" & i)
      End If
    Next i
  End With
 haut_somme = 8
   For n = 10 To Range("A65536").End(xlUp).Row + 1
   If Range("A" & n) = "" Then

   For m = 1 To 2
   
   Selection.Font.Bold = True
       Cells(n, 13 + m) = WorksheetFunction.Sum(Range(Cells(haut_somme, 13 + m), Cells(n - 1, 13 + m)))
          Next
             haut_somme = n + 1
       End If
   Next
   End Sub
 

Discussions similaires

Réponses
5
Affichages
190
Réponses
11
Affichages
296

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote