Probleme formule VBA (date et copier coller)

Mikael_D

XLDnaute Nouveau
Bonjour à toutes et tous

Je viens vers vous car je commence à me prendre un peu la tête (niveau vraiment moyen en VBA)
Pourriez vous m'aider si oui voici mon programme

Sub MAJ_KPI()

'Open de W

ChDir "\\noun\pvs\compta_groupe\caisse_client\Artois\BANQUE"
Workbooks.Open Filename:="V:\Artois\BANQUE\Modèle KPI LINE REP.xlsx", _
UpdateLinks:=0
Range("A1").Select

'Open fichier extraction KPI LINE_REP SAP

ChDir "\\noun\pvs\compta_groupe\caisse_client\Artois\BANQUE"
Workbooks.Open Filename:= _
"\\noun\pvs\compta_groupe\caisse_client\Artois\BANQUE\KPI.xls"

' Mise en forme du fichier KPI

Rows("10:10").Select
Selection.Delete Shift:=xlUp ' pour supprimer ligne

Rows("1:8").Select
Selection.Delete Shift:=xlUp ' pour supprimer ligne

Range("G:G").Select
Range("G1").Activate
Selection.Delete Shift:=xlToLeft ' pour supprimer colonne

Range("A:B").Select
Range("A1").Activate
Selection.Delete Shift:=xlToLeft ' pour supprimer colonne

' écrire Sté dans celulle A1
ActiveCell.Value = "Sté"

' Mise en forme de la date

Columns("D:E").Select
Selection.Replace What:=".", Replacement:="/", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Columns("D").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("E").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

' Mise à forme des montants

Range("T:T,V:V,X:X,Z:Z").Select
Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Columns("T").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("V").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("X").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("Z").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy


Workbooks("Modèle KPI LINE REP.xlsx").Sheets("Brut").Activate
Application.CutCopyMode = False
End Sub


2 problèmes
1) je récupère un fichier de SAP que j'ouvre sur excel après un peu de mise en forme (suppression de lignes et de colonnes et remplacement de . en / pour la date) je converti les 2 colonnes date (format texte) afin d'avoir le bon format or je me retrouve avec le problème suivant 05.02.2013 en 02/05/2013 après macro
2) après la selection de l'ensemble des lignes et colonnes de mon 1er fichier je veux le coller dans une autre feuille mais le collage ne fonction pas?????

merci de voter aide
Mikael
 

Poto

XLDnaute Occasionnel
Re : Probleme formule VBA (date et copier coller)

Salut,

pour ton probleme numero 1, qui est récurent avec Excel dès que tu joues avec des dates, la seule solution que je connaisse est de forcer le formatage de la date que tu veux, comme ca :

format(laDateQueTuVeuxFormater, "dd/mm/yyyy")

pour ton 2eme probleme, ta selection m'a l'air très bizzare... perso, je partirais sur qq chose de plus simple, type :


qui à pour effet de selectionner l'integralité des cellules de la feuille

voilà, amuses toi bien ;)

++
 
Dernière édition:

Mikael_D

XLDnaute Nouveau
Re : Probleme formule VBA (date et copier coller)

Merci pour ta réponse mais las dates sont restes en format standard 05.03.2013

pour la 2ème partie je selectionne tous les colonnes et lignes (qui varie en fonction des jours) de mon fichier pour les colles dans une autre feuille ou ce trouve des formules
 

Mikael_D

XLDnaute Nouveau
Re : Probleme formule VBA (date et copier coller)

Sub MAJ_KPI()

'Open de W
ChDir "\\noun\pvs\compta_groupe\caisse_client\Artois\BANQUE"
Workbooks.Open Filename:="V:\Artois\BANQUE\Modèle KPI LINE REP.xlsx", _
UpdateLinks:=0
Workbooks("Modèle KPI LINE REP.xlsx").Worksheets("SAP").Activate
Range("A:AZ").Select
Selection.AutoFilter
Selection.Clear
Range("A1").Select


'Open fichier extraction KPI LINE_REP SAP
ChDir "\\noun\pvs\compta_groupe\caisse_client\Artois\BANQUE"
Workbooks.Open Filename:= _
"\\noun\pvs\compta_groupe\caisse_client\Artois\BANQUE\KPI.xls"

' Mise en forme du fichier KPI
Rows("10:10").Select
Selection.Delete Shift:=xlUp ' pour supprimer ligne

Rows("1:8").Select
Selection.Delete Shift:=xlUp ' pour supprimer ligne

Range("G:G").Select
Range("G1").Activate
Selection.Delete Shift:=xlToLeft ' pour supprimer colonne

Range("A:B").Select
Range("A1").Activate
Selection.Delete Shift:=xlToLeft ' pour supprimer colonne

' écrire Sté dans celulle A1
ActiveCell.Value = "Sté"

' Mise en forme de la date
Columns("D:E").Select
'Format ("dd/mm/yyyy")
'Selection.Replace What:=".", Replacement:="/", LookAt:=xlPart, _
'SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
'ReplaceFormat:=False


'Columns("D").Select
' Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
' TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
' Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
' :=Array(1, 1), TrailingMinusNumbers:=True

'Columns("E").Select
' Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
' TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
' Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
' :=Array(1, 1), TrailingMinusNumbers:=True

' Mise à forme des montants
Range("T:T,V:V,X:X,Z:Z").Select
Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Columns("T").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("V").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("X").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Columns("Z").Select
Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True


'Selection de la plage et copier
Columns("A:AZ").Select

' Range("A1").Select
' Range(Selection, Selection.End(xlToRight)).Select
' Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Workbooks("Modèle KPI LINE REP.xlsx").Activate
Sheets("SAP").Select
ActiveSheet.Paste
Application.CutCopyMode = False



' coller dans fichier KPI LINE REP
' Workbooks("Modèle KPI LINE REP.xlsx").Sheets("Brut").Activate
'Range("A1").Select
'Application.CutCopyMode = False
End Sub
 

Pièces jointes

  • KPI.XLS
    147.7 KB · Affichages: 73
  • KPI.XLS
    147.7 KB · Affichages: 43
  • KPI.XLS
    147.7 KB · Affichages: 45
  • Modèle KPI LINE REP TEST.xlsx
    708.5 KB · Affichages: 36

Discussions similaires

Statistiques des forums

Discussions
312 239
Messages
2 086 494
Membres
103 234
dernier inscrit
matteo75654548