Bug sur commande VBA

Résolu/Fermé
Clem31 - 24 nov. 2011 à 11:28
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 24 nov. 2011 à 15:02
Bonjour,

J'ai un problème sur la commande suivant qui consiste en gros a insérer des lignes a un endroit spécifique et par la suite a y copier des formules.

Ma commande bug au niveau du "Pastespecial" (avant dernière commande).

quelqu'un peut-il m'aider
Sub Insertrow2()

Dim FindRng As Range
Dim OTDRow As Long

ActiveCell.Rows("1:6").EntireRow.Insert
ActiveCell.Range("A1:M1").Select
Selection.NumberFormat = "0%"
ActiveCell.Offset(1, 0).Range("A1:M2").Select
Selection.NumberFormat = "0"
ActiveCell.Offset(2, 0).Range("A1:m1").Select
Selection.NumberFormat = "0.00%"
ActiveCell.Offset(1, 0).Range("A1:m1").Select
Selection.NumberFormat = "0"
ActiveCell.Offset(1, 0).Range("A1:m1").Select
Selection.NumberFormat = "0.00%"
ActiveSheet.Rows("14:15").Select
Selection.EntireRow.Hidden = False



ActiveSheet.Rows("13:15").Activate
Selection.Copy

Set FindRng = ActiveSheet.Columns(2).Find("Rest OTD")
If Not FindRng Is Nothing Then
OTDRow = FindRng.Row
End If

ActiveSheet.Cells(OTDRow, 2).Activate
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveSheet.Rows("14:15").Select
Selection.EntireRow.Hidden = True
End Sub


PS: Je n'ais pas effectuer cette macro tout seul mais la personne qui m'a aidé ne peut me renseigner aujourd'hui... merci d'avance de votre aide
A voir également:

1 réponse

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
24 nov. 2011 à 13:05
Bonjour,
Dis nous plutôt ce que fais ta macro car le code n'est pas très conventionnel.
Exemple : ActiveCell.Range("A1:M1").Select
ActiveCell = cellule active
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
24 nov. 2011 à 13:16
... suite
Range("A1:M1").Select sélectionne la plage A1:M1...
0
Je me doutais bien que ça n'allait pas...
Pour essayer de faire simple je souhaite dans un tableau excel classique avec une ligne total a la fin pouvoir insérer des lignes par groupe de 6 avant cette ligne total.

Une fois ces 6 lignes ajoutées je souhaite y faire un copier/collage spécial formule sur les 3 dernière lignes ajoutées.

les formules a copier viennent des lignes 13;14 et 15 de mon tableau.

est-ce plus clair ?

merci d'avance
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
24 nov. 2011 à 14:24
OK.
Tu appliques des formats (%, nombre) à certaines lignes dans tes 6. Lesquelles et quel formatage?
0
Lignes 1, 4 et 6 en %
Lignes 2, 3 et 5 en nombre sans décimales

merci
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
24 nov. 2011 à 14:31
Dernière question et j'm'y mets...
Tu fais cette manip sur plusieurs feuilles?
Si non, quel est le nom de la feuille ou tu fais cette manip?
... j'aime pas trop ActiveSheet dans ce cas...
0