Impossible de modifier une macro : mémoire insuffisante

Bonjour à tous,

Je ne suis pas une pro des macros mais je me lance !

Il faut un début à tout....

J'essaie de modifier une macro mais impossible, il y a semble t-il un problème de mémoire que je ne sais pas résoudre.

Mon outil est une petite base de données qui permet de créer un nouveau dossier dans un onglet, le consulter et le modifier dans un autre, un autre onglet qui enregistre les données de la base.

Sub NOUVEAU()
'
' NOUVEAU Macro
'
    Sheets("Base de données").Select
    Rows("2:2").Select
    Selection.Insert Shift:=xlDown
    Sheets("Nouveau").Select
    Range("A2:BI2").Select
    Selection.Copy
    Sheets("Base de données").Select
    Range("A2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False

        Columns("A:BI").Select
    Selection.Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range("D2") _
        , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
        False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
        :=xlSortNormal

    Sheets("Nouveau").Select
    Range("C6:C21, F16, I5:I6, I8:I13, I16, F6, F23").Select 
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("C9").Select
    Selection.ClearContents
    Range("C5").Select
End Sub
_______________________________________________________________________
Sub Suppression_enregistrement()

If [Param_no_ligne] = 0 Then Exit Sub
If MsgBox("Confirmation de la suppression de l'enregistrement", vbYesNo, "Suppression") = vbYes Then
    Sheets("Base de données").Rows([Param_no_ligne] + 1).Delete Shift:=xlUp
    If [Nb_enregistrements_BD] < [Param_no_ligne] Then [Param_no_ligne] = [Param_no_ligne] - 1
End If

End Sub
___________________________________________________________________________
Sub Aller_a_enregistrement_suivant()
If [Param_no_ligne] < [Nb_enregistrements_BD] Then
[Param_no_ligne] = [Param_no_ligne] + 1
End If
End Sub
Sub Aller_a_enregistrement_precedent()
If [Param_no_ligne] > 1 Then
[Param_no_ligne] = [Param_no_ligne] - 1
End If

End Sub
___________________________________________________________
Sub Modification()
'
' Modification Macro
' '
    Range("A2:AW2").Select
    Selection.Copy
    Sheets("Base de données").Select
    Range("A" & [Param_no_ligne] + 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Sheets("Consultation bis").Select
    Range("D7:D16, D18, D20, D22, H5, H17:H21, L6:L7, L9:L14, L17:L20").Select
    Application.CutCopyMode = False
    Selection.ClearContents

    Range("B5").Select
End Sub
__________________________________________________________________
Sub Aller_a_nouveau()
'
' Aller_a_nouveau Macro
''
    Sheets("Nouveau").Select
End Sub
________________________________________________________________________
Sub Aller_a_consultation()
'
' Aller_a_consultation Macro
' '
    Sheets("Consultation bis").Select
    Range("D5").Select
End Sub
___________________________________________________________________________
Sub Aller_a_menu()
'
' Aller_a_menu Macro

'
    Sheets("MENU").Select
End Sub

Merci d'avance pour votre aide !!

Carole

-- 17 Nov 2010, 10:35 --

Pour être plus précise, je voudrais modifier cette ligne dans la 1ere macro :

Range("C6:C21, F16, I5:I6, I8:I13, I16, F6, F23").Select

Je voudrais y ajouter la cellule B25

Une fois fait, lorsque je clique sur la disquette, ma modification s'efface.

Si j'essaie d'insérer une ligne sous ce code j'ai la fenêtre erreur suivante qui s'affiche : MEMOIRE INSUFFISANTE

Bonjour,

En cas de message Memoire Insuffisante, il faut d'abord fermer Excel puis réouvir le fichier en question. Cela solutionne bien souvent le problème.

Pour le code, essaie ceci :

Sub NOUVEAU()
' NOUVEAU Macro
   With Sheets("Base de données")
   .Select
    .Rows("2:2").Insert Shift:=xlDown
    Sheets("Nouveau").Range("A2:BI2").Copy
    With .Range("A2")
        .PasteSpecial Paste:=xlPasteValues
        .PasteSpecial Paste:=xlPasteFormats
    End With
    .Columns("A:BI").Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range("D2") _
        , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
        False, Orientation:=xlTopToBottom
     End With
    Sheets("Nouveau").Select
    Range("C6:C21, F16, I5:I6, I8:I13, I16, F6, F23, B25").ClearContents
    Range("C9").ClearContents
End Sub

Amicalement

.... impossible de modififer le code, dès que je veux supprimer qqchose, le message "mémoire insuffisante" réapparait...

HELP !

Re,

Merci de mettre le fichier en ligne afin que je puisse tester.

Amicalement

OK je le mets demain dans la journée

bonne soirée

-- 18 Nov 2010, 14:04 --

ben aujourd'hui la modification fonctionne.....

Rechercher des sujets similaires à "impossible modifier macro memoire insuffisante"