Sauvegarder feuille excel avec ses données finales (contenu simple)sans formules

D

Debutan

Guest
Bonjour a tous,
Je vois que le forum est très actif. Je viens de débuter avec Excel et je travaille avec les macros. Peut etre que je n'ai pas besoin d elle. Si quelqu'un parmi vous pourrait m'indiquer une maniere excellienne de résoudre un pti prob..je l'en remercie d'avance.

Actuellement, je butte sur le problème suivant:

J'ai un classeur excel composé de 3 feuilles :
- Les 2 premières feuilles excel sont des feuilles de travail avec des colonnes de cellules "listes déroulantes" et d'autres colonnes de cellule contenant des formules RechercheV
- La 3ème feuille fait office de base de données pour les deux premieres feuilles et définie une zone a partir de laquelle les deux premieres feuilles se basent pour les listes déroulants et les RechercheV.

Je souhaite sauvegarder les 2 premieres feuilles excel dans un format données sans listes déroulantes, ni formules mé juste deux feuilles excel simple rempli des données sélectionnées ou calculées sans les formules..etc.

Y aurait il une maniere de faire propre sous Excel97?
 
@

@+Thierry

Guest
Bonjour Debutant, le Forum

Pour faire ceci sans macro, il faut procéder en deux étapes (pour autant que ce que tu appelles "listes déroulantes" soient des listes de Validation (?)...

Etape 1 / Suppression des Formules et autres liens
1) Sélectionner la plage (CTRL A, ou à la souris, click sur l'intersection Colonnes/Lignes entre "A" et "1")
2) Copier la Plage (CTRL C, ou à la souris, click sur bouton Copier)
3) Aller dans Menu / Collage Spécial , option => Coller Valeur


Etape 2 / Suppression des Liste de Validation
1) Sélectionner la plage (CTRL A, ou à la souris, click sur l'intersection Colonnes/Lignes entre "A" et "1")
2) Aller dans Menu / Données, Liste de Validation
3) Répondre oui à "Voulez vous étendre la sélection"
4) Dans la fenêtre suivante clicker sur le bouton "Clear All" (huum en français ce doit être "Supprimer tout" ou "Vider tout") le bouton est en bas à gauche.

Mais sinon un macro peut faire la même chose en une seule action.

Sub RecoverValueOnly()
Cells.Copy
Cells.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Cells.Validation.Delete
End Sub

Bon Appétit
@+Thierry
 
D

Debutan

Guest
Merci Thierry.
Je vais tester la macro que tu m'as écrite la. Faudrait peut etre que je la complète car je désire sauver la feuille excel générée dans un fichier xls indépendemment de mes trois feuilles de travail sans écraser le classeur courant. Mon but est d'automatiser le traitement.
- Primo je travaille dans le classeur courant que je rempli.
- Secondo une fois rempli et plus de modification, je soumet les feuilles remplies a la macro qui me génère une feuille de données excel simple avec les cellules remplies comme précédemment (meme contenu) sans formules ou autres fonctionnalités autres que du texte.

Merci et bon apétit a toi aussi
 
D

Debutan

Guest
Merci thierry
j'ai testé ta macro et elle fonctionne tres bien sur la feuille courante. Mé si je sauvegarde la feuille courante apres avoir executé la macro je perds ma feuille originale avec les formules adéquates. Ah je conné pas bcp vba..Faudrait que je complète la macro que tu m'as écrite la pour sauvegarder le classeur apres exécution de cette macro sous un nom différent histoire de ne pas perdre mon classeur de travail.
Aurais tu une idée?

Bon aps si tu manges la!

et MERCIiiiiiiiii beaucoup.
 
@

@+Thierry

Guest
Salut Debutan, le Forum

Je n'avais pas vu ta question complémentaire...

Donc ce code va faire une copie de la feuille active (sans formule ni liste de validation) dans un nouveau classeur qui sera sauvé dans le même répertoire que celui où sera placé ce code et ce nouveau classeur sera automatiquement nommé "CopieFeuilleDeTravail.xls" et fermé.


Sub RecoverValueOnly()
Dim Chemin As String

Chemin = ThisWorkbook.Path & "\"
'Changer pour "C:\Documents and Settings\te\My Documents\" (par exemple si on veut un autre chemin que le répertoire en cours)

ActiveSheet.Copy '<<<< ou Sheets("LaFeuille").Copy (Si nécessaire)
Cells.Copy
Cells.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Cells.Validation.Delete
With ActiveWorkbook
.SaveAs Chemin & "CopieFeuilleDeTravail.xls"
.Close '<<< supprimer si on veut garder le classeur à l'écran
End With
End Sub


Bon App
@+Thierry
 
D

Debutan

Guest
Merci Thierry pour tes explications et ton aide. Je vais de ce pas tester cette macro et la ranger dans les macros outils de mon dossier. Ca me permet d avancer sur d'autres problemes. Mercii encoreeeeeeeeeeeee!
 

Discussions similaires

Statistiques des forums

Discussions
314 162
Messages
2 106 604
Membres
109 639
dernier inscrit
Phil1860