ARCHIVER AVEC UN BOUTON

  • Initiateur de la discussion hibernatuce
  • Date de début
H

hibernatuce

Guest
BJR A TOUS
JE CHERCHE A ARCHIVER MES NOTES DE FRAIS PAR UN BOUTON SOUS EXCEL
1= ACTION DU BOUTON
2=ARCHIVAGE PAR DATE ET SANS DOUBLON (SI ON APUI 2 FOIS SUR LE BOUTON)DANS UN AUTRE FEUILLE

JE VOUDRAI ARCHIVE SEULEMENT LE CONTENU DE MES CELLULE (PAS LES FORMULES ET LES CADRES)ET POURVOIR LES REVOIR DANS LES CDRE DEPUI LES ARCHIVE

C PAS SIMPLE POURIEZ VOUS M'ECLAIRER

HIBERNATUCE
 

Hervé

XLDnaute Barbatruc
Bonsoir

Pourquoi tu cries comme ça, :)

Tu trouveras en pièce jointe, une proposition,

comme ta demande n'était pas très détaillée, j'ai suivi mon inspiration.

A plus

PS : Les majuscules sur internet indique que l'internaute crie.
[file name=Classeur2_20050403232353.zip size=15089]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20050403232353.zip[/file]

Message édité par: Hervé, à: 03/04/2005 23:24
 

Pièces jointes

  • Classeur2_20050403232353.zip
    14.7 KB · Affichages: 236
H

hibernatuce

Guest
Hello
super ton prog mai je suis pas asser balaise pour modifier les cellule a copier, je ne comprend pas pourquoi elle ne s appelle pas pareil

a tu un truc plus simple

en fait il me manque comment copier des cellules (macro)sur une autre feuille sans reecrire dessus
il faudai que lorsque je klic sur mon bouton je puisse copier ma ligne,
la garder et lorsque g klic a nouveau il ercrive en dessous et qu il n accepte pa deux foi le meme ligne (pas deux foi le meme mois de mes frais)

merci encor pour ton boulo
hibernatuce
 

Hervé

XLDnaute Barbatruc
Bonjour

Quelques explications :

En VBA, les cellules s'appelle range et les feuilles sheets, lorsque tu veux indiquer à la macro une cellule, tu utilises la synthaxe :

Sheets('nomdelafeuille').range('adressedelacellule') ainsi en reprenant l'exemple de la pièce jointe :

La cellule B1 de la feuille Archive =
sheets('archive').range('B1')

Si maintenant dans cette cellule tu veux copier la cellule B1 de la feuille saisie :

sheets('archive').range('B1')=sheets('saisie').range('B1')

Comme tu ne sais pas le numéro de la derniere ligne utilisable dans la feuille archive, on utilise une variable :

derligne = sheets('archive').Range('a65536').End(xlUp).Row + 1

dans derligne est stockée le numéro de la derniere ligne, donc :

sheets('archive').range('B'&derligne)=sheets('saisie').range('B1')

La macro à placer dans le module 1 de la feuille, pourrait ressembler à ceci :

Public Sub archivage()
Dim derligne As Integer

derligne = Sheets('archive').Range('a65536').End(xlUp).Row + 1

Sheets('archive').Range('a' & derligne) = Sheets('saisie').Range('B1')
Sheets('archive').Range('B' & derligne) = Sheets('saisie').Range('B2')
Sheets('archive').Range('C' & derligne) = Sheets('saisie').Range('B3')
Sheets('archive').Range('D' & derligne) = Sheets('saisie').Range('B4')

End Sub

Par contre pour tes histoires de doublons il serait souhaitable de nous adresser un exemple en pièce jointe.

En espérant avoir été didactique.

salut

Message édité par: Hervé, à: 04/04/2005 16:22
 
H

HIBERNATUCE

Guest
bjr
ton programe marche bien et j ai tou compris ou presque

pourrrait on rajouter une limite de 12 cellule (12mois)et si on arrive au 12 cellule rempli passer a 4 cellule plus bas et recomencer le
cycle(annee)

Public Sub archivin()
Dim derligne As Integer

derligne = Sheets('archive').Range('a65536').End(xlUp).Row + 1

Sheets('archive').Range('a' & derligne) = Sheets('saisie').Range('f2')
Sheets('archive').Range('B' & derligne) = Sheets('saisie').Range('l2')
Sheets('archive').Range('C' & derligne) = Sheets('saisie').Range('f61')
Sheets('archive').Range('D' & derligne) = Sheets('saisie').Range('k62')
Sheets('archive').Range('e' & derligne) = Sheets('saisie').Range('n9')
Sheets('archive').Range('f' & derligne) = Sheets('saisie').Range('n28')

End Sub
a+ hibernatuce et encore merci
 

Hervé

XLDnaute Barbatruc
Bonjour

Désolé pour la réponse tardive, je ne retrouvais plus ce post :)

Alors, pour laisser 4 lignes de libre entre les séquences de 12 lignes.

Le plus simple pour toi, me semble t'il est de tester le numéro de la ligne, et ainsi vérifier que celle-ci ne soit pas une des lignes pour lequel on doit laisser l'écart.

Je suis pas sur d'etre très clair mais en regardant la pièce jointe, tu va tout comprendre.

Salut
[file name=Classeur2_20050409181854.zip size=13157]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20050409181854.zip[/file]
 

Pièces jointes

  • Classeur2_20050409181854.zip
    12.8 KB · Affichages: 127

Lagache

XLDnaute Occasionnel
Bonjour le Forum
En consultant le forum pour l'archivage , je suis tombé (bouah ça fait mal) sur ton code Hervé , pas le dernier post mais le premier, serait il possible de l'adapter dans l'autre sens à savoir colonne a = Nom , Colonne B = Prénom etc ... ?
Je ne suis pas trés fort en vba , et j'ai besoin de lumiéres

Merci et bonne journée ;)
@ +++
 

Discussions similaires

Réponses
11
Affichages
543

Statistiques des forums

Discussions
312 336
Messages
2 087 389
Membres
103 534
dernier inscrit
Kalamymustapha