Je voudrais savoir si il est possible de copier un tableau dans un autre onglet en gardant la hauteur et largeur des cellules.
A l'heure actuel j'utilise ce code:
Car dans le classeur que je me fais, je serais amené à faire des copies de beaucoup de tableaux de différents onglets sur un même onglet, et ne connaissant pas le nombre exact de tableaux que j'aurais (données), je ne pourrais pas ".RowHeight" chaque cellules .... Si vous avez une idée.
Re : Garder le format d'un tableau lors d'une copie dans un autre onglet.
Bonsoir,
à tester et mettre dans un module
Reproduit la mise en forme de la feuille1 vers la feuille 2
Code:
Option Explicit
Sub MiseForme()
Range("Feuille1!A1:B16").Select 'plage à modifier selon convenance
Selection.Copy
Sheets("Feuille2").Select 'nom de la feuille à modifier
Range("Feuille2!A1").Select '1ere cellule de la copie
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Normalement, ça ne garde que le format (sans formules éventuelles)
Re : Garder le format d'un tableau lors d'une copie dans un autre onglet.
Bonsoir Philippe68,
Merci pour ta réponse.
Dans mon fichier exemple, je me sert de deux cellules pour nommer les nouveaux onglets afin d'y copier les tableaux, comment je peux adapter ton code selon le nom de l'onglet ??
Je testerai ton code demain, je vais me coucher, j"ai les yeux qui piquent
Encore merci.
Re : Garder le format d'un tableau lors d'une copie dans un autre onglet.
Re,
je t'ai ajouté 2 onglets (Feuil1 et Feuil2) que j'ai déplacé vers la gauche pour exemple.
dans la feuille TEST, je t'ai mis un bouton (voir code dans module1)
ce bouton fera renommer le 2eme onglet (feuil2)
Dans le nouvel onglet renommé, tu insères le code de ma 1ère réponse
code que tu actionneras via le bouton Mise en Forme (tjrs dans la feuille TEST) et dans le module2
à toi après de faire les modifs dans les codes pour les plages de cellules à copier
Re : Garder le format d'un tableau lors d'une copie dans un autre onglet.
Salut Philippe68, bonjour le forum,
Merci pour ton fichier, j'ai testé en modifiant selon les plages de cellules à copier comme tu me l'a dis, le tableau se copie mais sans prendre en compte la mise en forme.
J'aimerais bien expliquer se que je veux obtenir via mon fichier de départ (pièce jointe):
En cliquant le bouton "Sauvegarder" qui se trouve sur l'onglet "Test":
- Je veux que ça créé un nouveau onglet.
- Que ça renomme le nouveau onglet selon les valeurs qui se trouve dans l'onglet "Test" en cellules "C4" "E4"
- Que ça copie le tableau qui se trouve dans l'onglet "Test" de "A9" à "G25" en prenant les valeur et la forme de ce dernier.
- Puis de HIDE le nouveau onglet créé et renommé.
Tout cela je l'obtiens avec ce code: -> sauf la mise en forme (largeur et hauteur des cellules) du tableau.
Code:
Private Sub CommandButton1_Click()
Dim NomOnglet As String
Prefixe = Sheets("Test").Range("C4").Value
Suffixe = Sheets("Test").Range("E4").Value
NomOnglet = "Niveau " & Prefixe & " Séance " & Suffixe
ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = NomOnglet
Sheets("Settings").[B1] = NomOnglet
Sheets("Test").Range("A9:G25").Copy Destination:=ActiveSheet.Range("A1")
Worksheets(Worksheets.Count).Visible = xlHidden
End Sub
En gros j'aimerais tout faire, si possible via le bouton "Sauvegarder".
Pour info:
A terme (lointain), dans mon fichier, j'aurais pleins d'onglets "HIDE" avec un seul tableau dans chaque onglets, et je me ferais une macro via une "combobox" qui me permettra, selon la demande, de consulter les tableaux des ces onglets, sur dans un seul onglet, toujours pareil en gardant la mise en forme.
Re : Garder le format d'un tableau lors d'une copie dans un autre onglet.
Salut à tous,
Je recherche toujours une solution, mais hélas je ne trouve pas la fonction qui va bien
C'est tout de même dommage qu'il n'ait pas de copie du format via cette fonction -> ".Copy Destination"