macro xls décaler tableau

macro xls décaler tableau - VB/VBA/VBS - Programmation

Marsh Posté le 24-01-2008 à 11:44:36    

Bonjour,  
 
je débute dans les macro Excel... et j'ai beau chercher sur tous le forums, je ne trouve pas de solutions à mon problème.  
 
Je dispose d'une feuille excel  avec 4 tableaux.  
Chaque tableau dispose de 4 colonnes (Mois, Mois-1, mois-2, mois-3) et de 3 lignes correspondant à des indicateurs.  
 
J'aimerais créer une macro qui permettrait d'enregister les données de la colonne mois (idéalement indiquer le mois en cours) dans une autre feuille (archive de toutes les données) et qui ensuite décalerait toutes les données vers la droite (et qui effacerait le contenu de la dernière colonne mois-3). Ainsi la colonne mois serait prête pour un nouvel encodage et ainsi de suite chaque fois qu'on appuie sur un bouton auquel on aurait affecté la macro.  
 
Ma macro actuelle n'est pas "belle" et ne fonctionne pas totalement en plus...  
 
Sheets("NE PAS TOUCHER" ).Select  
    Columns("B:B" ).Select  
    Selection.Insert Shift:=xlToRight  
    Selection.ColumnWidth = 10  
    Range("B2" ) = Range("'feuil2'!C4" )  
    Range("B3" ) = Range("'feuil2'!C5" )  
    Range("B4" ) = Range("'feuil2'!C6" )  
    Range("B6" ) = Range("'feuil2'!C10" )  
    Range("B7" ) = Range("'feuil2'!C11" )  
    Range("B8" ) = Range("'feuil2'!C12" )  
    Range("B10" ) = Range("'feuil2'!K4" )  
    Range("B11" ) = Range("'feuil2'!K5" )  
    Range("B13" ) = Range("'feuil2'!K10" )  
    Range("B14" ) = Range("'feuil2'!K11" )  
    Range("B15" ) = Range("'feuil2'!K12" )  
    Range("B16" ) = Range("'feuil2'!K13" )  
    Range("B18" ) = Range("'feuil2'!C17" )  
    Range("B19" ) = Range("'feuil2'!D17" )  
    Range("B20" ) = Range("'feuil2'!E17" )  
    Range("B21" ) = Range("'feuil2'!F17" )  
    Range("B22" ) = Range("'feuil2'!C18" )  
    Range("B23" ) = Range("'feuil2'!D18" )  
    Range("B24" ) = Range("'feuil2'!E18" )  
    Range("B25" ) = Range("'feuil2'!F18" )  
    Sheets("feuil2" ).Select  
    Range("F4:F6" ).Select = Range("E4:E6" )  
 
Pourriez-vous m'aider.  
 
Merci beaucoup  
 
Manu

Reply

Marsh Posté le 24-01-2008 à 11:44:36   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed