Copy paste values pour fichier entier xls
vinsvanden
-
Patrice33740 Messages postés 8930 Statut Membre -
Patrice33740 Messages postés 8930 Statut Membre -
Bonjour,
J'aimerais dans xls (fonction) et/ou VBA(macro) savoir comment on peut faire un copy-paste values de tout un fichier?
S'il faut faire feuille par feuille dans la macro qu'on créé, comment peut on savoir par une requète combien il y a de feuilles et quels sont les noms des feuilles?
Merci pour votre aide.
vins
J'aimerais dans xls (fonction) et/ou VBA(macro) savoir comment on peut faire un copy-paste values de tout un fichier?
S'il faut faire feuille par feuille dans la macro qu'on créé, comment peut on savoir par une requète combien il y a de feuilles et quels sont les noms des feuilles?
Merci pour votre aide.
vins
A voir également:
- Copy paste values pour fichier entier xls
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
1 réponse
Bonjour,
Essaie ce code (il y a les réponses à tes questions) :
Cordialement
Patrice
Essaie ce code (il y a les réponses à tes questions) :
Private Sub Elimine_les_formules()
' Elimine les formules de calcul
'
Dim rngPlage As Range 'Plage des cellules utilisées
Dim adrCelluleInitiale As String 'Adresse de la cellule active initiale
Dim nomFeuilleInitiale As String 'Nom de la feuille de calcul active
Dim nomFeuille As String 'Nom de la feuille de calcul
Dim n°Feuille As Integer 'N° d'index de la feuille
Dim intModeDeCalcul As Integer 'Mode de calcul initial (manuel, auto, )
Dim flgMàjEcran As Boolean 'Etat initial de l'actualisation écran
'Enregistrer le contexte initial
nomFeuilleInitiale = ActiveSheet.Name
adrCelluleInitiale = ActiveCell.Address
'Arrêter l'actualisation automatique de l'écran et les calculs
flgMàjEcran = Application.ScreenUpdating
intModeDeCalcul = Application.Calculation
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
'Explorer le classeur feuille à feuille
n°Feuille = 1
Do
'Eliminer les formules de la zone utilisée
nomFeuille = Sheets(n°Feuille).Name
Sheets(nomFeuille).Select
Application.StatusBar = "Suppression des formules dans " & nomFeuille
' - définir la zone utilisée
Set rngPlage = Sheets(nomFeuille).UsedRange
' - remplacer les formules par leurs valeurs
rngPlage.Copy
rngPlage.PasteSpecial Paste:=xlPasteValues
'- Feuille suivante
n°Feuille = n°Feuille + 1
Loop While n°Feuille <= Sheets.Count
'Restaurer le contexte initial
Sheets(nomFeuilleInitiale).Select
ActiveSheet.Range(adrCelluleInitiale).Select
Application.StatusBar = False
Application.ScreenUpdating = flgMàjEcran
Application.Calculation = intModeDeCalcul
End Sub
Cordialement
Patrice
Merci de votre réponse.
Je vais essayer cela.
Patrice