XL 2010 Problème de transfert de données

Louiseleclerc

XLDnaute Nouveau
Bonjour,
une autre petite question pour vous (une chance que vous êtes là (je commence) j'ai programmer des transfert de données avec un bouton transfert et c'est avec plein de With. Ça fonctionne mais je suis obligé de peser 20 fois sur transférer les données. Je vous ai mis ma macro mais y a-t-il une façon de simplifier cette macro pour faire une seule fois transférer les données ???
 

Pièces jointes

  • macro.docx
    15.1 KB · Affichages: 20

dg62

XLDnaute Barbatruc
Bonjour,
en simplifiant le code
VB:
With Sheets("ventilation cumulative")
I=6
colonne = .Rows(2).Find(Range("f2"), , , , xlByRows, xlPrevious).Column 'colonne du mois
ligne = .Columns(1).Find(Range("a"&i), , , xlWhole, xlByColumns, xlPrevious).Row 'ligne du libellé
.Cells(ligne, colonne) = Range("b"&i) 'inscrit la somme
.Cells(ligne, colonne + 1) = Range("c")&i 'inscrit le nombre
I=i+1
ligne = .Columns(1).Find(Range("a"&i), , , xlWhole, xlByColumns, xlPrevious).Row 'ligne du libellé
.Cells(ligne, colonne) = Range("b"&i) 'inscrit la somme
.Cells(ligne, colonne + 1) = Range("c"&i) 'inscrit le nombre
I=i+1
ligne = .Columns(1).Find(Range("a"&i), , , xlWhole, xlByColumns, xlPrevious).Row 'ligne du libellé
.Cells(ligne, colonne) = Range("b"&i) 'inscrit la somme
.Cells(ligne, colonne + 1) = Range("c"&i) 'inscrit le nombre
I=i+1
et ainsi de suite
ou en bouclant c'est encore plus simple.
VB:
With Sheets("ventilation cumulative")

colonne = .Rows(2).Find(Range("f2"), , , , xlByRows, xlPrevious).Column 'colonne du mois
for i = 6 to 28
ligne = .Columns(1).Find(Range("a"&i), , , xlWhole, xlByColumns, xlPrevious).Row 'ligne du libellé
.Cells(ligne, colonne) = Range("b"&i) 'inscrit la somme
.Cells(ligne, colonne + 1) = Range("c"&i) 'inscrit le nombre
next i
msgbox "Transfert effectué"
end with
 
Dernière édition:

Discussions similaires

Réponses
5
Affichages
133

Statistiques des forums

Discussions
312 294
Messages
2 086 916
Membres
103 404
dernier inscrit
sultan87