Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Bonjour à tous,
Bonjour à tous,
J’ai un fichier ci-joint, j’ai enregistré VBA manuellement comme toujours et le nom du macro tranfert FPD avait un problème a la fermeture du fichier et le fichier ne peut plus être ouvert.
Quelqu’un a de solutions ou peut le rendre utilisable alors que les code VBA sont gardés
MErci
Je répète ce qui à été dit maintes fois: écrire un titre en majuscule équivaut à crier; ors, grâce à Dieu, on est pas sourd.
Dans ton fichier tu as 2 macros avec le même nom, il faut modifier. En plus, comme tu as des classeurs externes, impossible de l'utiliser. Mais le fichier chez moi est bien ouvert sans problème.
NOTE: je te conseille de nettoyer tes codes, car avec tous ces SELECT, à la longue tu va faire planter Excel. Un exemple
VB:
Sub transfertFPD()
Dim WbCSB As Workbook, WbOTI As Workbook
Dim ShA As Worksheet, ShB As Worksheet
'
' transfertFPD Macro
' Transférer FPD de CSBF vers situation périodique
'
Set WbCSB = Workbooks("CSBF_CONS_Juin_18.xlsx")
Set WbOTI = Workbooks("Etats déclaratifs éléctroniques OTIVTANA.xls")
Set ShA = WbCSB.Sheets("FPD")
Set ShB = WbOTI.Sheets("FPD")
Application.ScreenUpdating = False
With ShA
.Range("E10:E13").Copy
End With
With ShB
.Range("C10").PasteSpecial Paste:=xlPasteValues
End With
With ShA
.Range("E15:E20").Copy
End With
With ShB
.Range("C15").PasteSpecial Paste:=xlPasteValues
End With
End Sub
Faire comme ceci pour toutes les plages à copier.
Si dans les autres classeurs il n'y a pas de mise en forme (cellules en couleurs, gras, bordures etc.)
With ShA
.Range("E10:E13").Copy ShB .Range("C10")
End With
Bonjour Lone -wolf,
Le problème c'est que le fichier ne plus s'ouvrir, si tu l'a ouvert, si tu peux supprimer juste la macro dont le nom contient FPD et solvabilité, mais les autres à ne pas supprimer.
Merci
On peut aussi ne pas passer par le copier/coller Valeurs seules
Ci-dessous 2 exemples de syntaxe
VB:
Sub test1()
Dim a As Workbook, b As Workbook
Dim aa As Worksheet, bb As Worksheet
Set a = Workbooks("Classeur1")
Set b = Workbooks("Classeur2")
Set aa = a.Sheets(1)
Set bb = b.Sheets(1)
bb.Range("C10:C13").Value = aa.Range("E10:E13").Value
bb.Range("C15:C20").Value = aa.Range("E15:E20").Value
End Sub
Sub test2()
Dim a As Workbook, b As Workbook
Set a = Workbooks("Classeur1"): Set b = Workbooks("Classeur2")
b.Sheets(1).[C10:C13].Value = a.Sheets(1).[E10:E13].Value
b.Sheets(1).[C15:C20].Value = a.Sheets(1).[E15:E20].Value
End Sub
NB: Evidemment, il faudra adapter avec le vrai nom des classeurs et des feuilles.
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.