Problème code VBA

SLIJACK

XLDnaute Nouveau
Bonjour le forum!!
petit problème sur code VBA, qui fonctionnait bien jusqu'à ce que je déplace les onglet dans un nouveau classeur pour faire des essaie et puis je les ai remis dans leurs classeur d'origine.
J'espère ne pas être trop brouillon dans mon explication, je joint le fichier concerné.
le code:
Sub EnregDevis()
Range("ligne").Copy
With Sheets("BibPerso")
.Range("A65536").End(xlUp)(2).PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False
Range("A15") = Range("A15") + 1 'incrémente le N° d'ordre
Range("b15") = Range("b15") + 1 'incrémente le N° ouvrage
Range("b19:d19").ClearContents
Range("B22:F49").ClearContents
Range("H22:H49").ClearContents
End Sub

c'est Range("ligne").copy qui cause problème enfin je crois.
merci d'avance pour l'aide
 

Pièces jointes

  • Classeur1.xlsm
    23.9 KB · Affichages: 58
  • Classeur1.xlsm
    23.9 KB · Affichages: 58
  • Classeur1.xlsm
    23.9 KB · Affichages: 53
G

Guest

Guest
Re : Problème code VBA

Bonsoir,

Après ouverture du fichier et vérification des noms, sans doute Jean-Marcel, que je salue:), a-t-il raison. Les noms sont remplis d'erreurs "#REF". Lors du déplacement d'un fichier à l'autre les références ont sûrement étées perdues....

A+
 

laurent950

XLDnaute Accro
Re : Problème code VBA

Bonjour SLIJACK.

J’ai regardé votre code, en faite la variable ligne n’est pas définit ce qui génère un bug dans le code.

Ligne est en faite la ligne A15 :F15 est il faut définir cette plage en plage nommé.

J’ai remplacé ligne par :

Range(“A15 :F15“).copy ont aurait aussi pu écrire Range(cells(15,1) ,cells(15,6)).copy

A présent votre macro fonctionne

Le code :

Sub EnregDevis()
'Range("ligne").Copy ' Cellule A15:F15
Range("A15:F15").Copy ' Il faut défifinir ligne en plage nomée et définir la variable
With Sheets("BibPerso")
.Range("A65536").End(xlUp)(2).PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False
Range("A15") = Range("A15") + 1 'incrémente le N° d'ordre
Range("b15") = Range("b15") + 1 'incrémente le N° ouvrage
Range("b19:d19").ClearContents
Range("B22:F49").ClearContents
Range("H22:H49").ClearContents
End Sub

Au plaisir de vous lire et vous répondre.

Laurent
 

Pièces jointes

  • SLIJACK_Classeur1.xlsm
    27.8 KB · Affichages: 38
Dernière édition:

SLIJACK

XLDnaute Nouveau
Re : Problème code VBA

bonsoir à tous
merci laurent950 cela marche nickel, je suis super contant.
milles excuse je remercie également Jean-Marcel et Hasco de s’être penché sur mon problème
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 559
Messages
2 089 602
Membres
104 224
dernier inscrit
Brilma