Microsoft 365 Macro VBA supprimer une colonne

marie3107

XLDnaute Nouveau
Bonjour,

J'ai créé une macro me permettant de copier/coller plusieurs feuilles (qui se nomment "RAPPORT DE COMPETENCE", "COLLECTIF" et "REPONSES") d'un fichier dans un autre fichier Excel :

Sub CopieFeuilles_INDIV()

Dim tablo, F As Object, n%, chemin$, test As Boolean, Fichier$, FileFormatNum
Dim NomClasseur As String
Dim MaMessagerie As Object
Dim MonMessage As Object
Dim NomFichier As String

ActiveSheet.Unprotect

Continuer = MsgBox("ATTENTION : Vous êtes sur le point de faire une copie du rapport de compétences. Souhaitez vous continuer ?", vbYesNo)

If Continuer = vbYes Then

tablo = Array("RAPPORT DE COMPETENCES", "COLLECTIF", "REPONSES") 'noms des feuilles à copier

Set F = ThisWorkbook.Sheets(tablo)
With Application
n = .SheetsInNewWorkbook
.SheetsInNewWorkbook = F.Count
Workbooks.Add 'nouveau document
.SheetsInNewWorkbook = n
End With
With ActiveWorkbook
For n = 1 To F.Count
With .Sheets(n)
F(n).Cells.Copy .Cells
.UsedRange = .UsedRange.Value
.Name = F(n).Name
Sheets("RAPPORT DE COMPETENCES").Columns("J:N").Select
Selection.Delete Shift:=xlToLeft
End With
Next

.Sheets(tablo).Select
ActiveWindow.DisplayGridlines = False 'le quadrillage n'est pas affiché
Application.DisplayFormulaBar = True 'Masque la barre de formule
Application.DisplayStatusBar = False
ActiveWindow.DisplayHeadings = False 'Masque les en-têtes


Sheets("RAPPORT DE COMPETENCES").Range("H2").Select

Application.Dialogs(xlDialogSaveAs).Show ("RAPPORT DE COMPETENCE - " & Sheets("RAPPORT DE COMPETENCES").Range("D6") & ".xlsx")
Sheets("RAPPORT DE COMPETENCES").Select
ActiveWorkbook.Protect
ActiveWorkbook.Close

End With
End If

End Sub

La macro marche très bien.
Or, j'arrive à supprimer les colonnes J à N de la feuille "RAPPORT de COMPETENCE" mais pas de celles "COLLECTIFS" ni "REPONSES".

Pourriez-vous m'éclairer SVP ?
 

Statistiques des forums

Discussions
312 207
Messages
2 086 232
Membres
103 161
dernier inscrit
Rogombe bryan