Bonjour,
J'ai crée un petit programme qui me permet de copier une cellule sur d'autre cellule et de renommer le fichier.
mais je ne sais pas pourquoi, mon nouveau fichier s'enregistre dans "mes documents" alors que je ne voudrais pas qu'l ne se deplace pas et qu il reste là ou il est..
Je vous joins ma macro :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 Sub test() Dim b As Integer b = Range("b" & Range("b65536").End(xlUp).Row).Row ' derniere ligne non vide de la colonne BRange("D28:E28" & b).Select 'selection de la zone de copie On Error Resume Next 'alerte l'utilisateur pour ses fichiers déja ouverts MsgBox "VOUS ACTIVEZ LA MACRO RUE DU COMMERCE.." Dim rep1 As Long rep1 = MsgBox("FERMER TOUS VOS FICHIERS EXCEL" & Chr(13) & _ "Vous risquez de modifier automatiquement vos fichiers déja ouverts !!!" & Chr(13) & _ " Voulez vous continuer ? " & Chr(13), vbYesNo + vbCritical, "ATTENTION ") If rep1 = vbNo Then Exit Sub Dim nom As String, Fichier As String Dim FichierSource As String nom = "Bordereau du" & " " & Format([E9].Value, "yymmdd") FichierSource = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name 'ActiveWorkbook.Path & "\" & ActiveWorkbook.name permet de récuperer le chemin du classeur actif 'Nom à donner au nouveau fichier Fichier = nom 'Enregistrement au format du classeur ActiveWorkbook.SaveAs Filename:=Fichier, FileFormat:=xlNormal Range("D28:E28").Formula = "=""*""&SUBSTITUTE(RC[-2],"" "","""")&""*""" Range("D28:E28").Copy Range("D28:E" & b).Select 'selection de la zone de copie Selection.PasteSpecial Paste:=xlFormulas, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False Range("D28:E" & b).Select With Selection.Font .Name = "3 of 9 Barcode" .Size = 24 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .ColorIndex = 1 End With Application.CutCopyMode = False 'instrcution qui permet d'effacer la marque de selection autor de la plage copiee End Sub
Partager