Avatar billede gider_ikke_mere Nybegynder
24. august 2004 - 11:17 Der er 11 kommentarer og
1 løsning

Popup: "der er ikke systemressourcer til at vise alt"

Jeg bruger Excel 2003.
min computer har 750 Mb ram og mit regneark er på ca. 5 Mb.

Excelarket indeholder ca. 9.500 formler på 13 forskellige ark.

Fejlbeskeden kommer som oftest når jeg kører en makro der gendanner data i nogle celler. Den har ingen indvirkning på beregninger (tilsyneladende), men beskeden er ret irreterende.
Avatar billede sjap Praktikant
24. august 2004 - 17:23 #1
Jeg ved det ikke men måske kan

    Application.ScreenUpdating = False

hjælpe på problemet. Husk at sætte

    Application.ScreenUpdating = True

til sidst i makroen :0)
Avatar billede bak Forsker
24. august 2004 - 18:54 #2
Avatar billede gider_ikke_mere Nybegynder
24. august 2004 - 20:26 #3
Sjap: Jeg kører både med Application.ScreenUpdating = False
samt EnableCalculation = false under forløbet!

Bak: Jeg kender artiklen men mit dokument ligger langt under de tal der er angivet der!

Fejlen kommer også nogen gange bare ved at ændre værdien i en celle.

Vi snakker måske i alt om hver 20. gang der bliver lavet en ændring i dokumentet.
Fejlen er i øvrigt opstået efter jeg gik over til Office 2003 for en måned siden.
Avatar billede bak Forsker
24. august 2004 - 20:50 #4
Heldigvis har jeg ikke den version :-)

1. memoryforbruget har intet at gøre med filstørrelsen. brug =INFO("brugthuk")
2. bruger du autofill ?
3. har du prøvet at sætte Application.Calculation = False, mens makroen kører, således at den ikke laver genberegning ?
Avatar billede bak Forsker
24. august 2004 - 20:53 #5
sorry, så ikke lige at du havde svaret på 3.
Det var faktisk heller ikke det jeg ville spørge om.
har du prøvet at sætte Application.DisplayAlerts = False, så slipper du da for meddelelsen :-)
Avatar billede bak Forsker
24. august 2004 - 20:59 #6
næææh, det havde du faktisk ikke svaret på. Du har brugt EnableCalculation = false.
prøv  Application.Calculation =xlCalculationManual.
Dette er to forskellige ting.
Avatar billede gider_ikke_mere Nybegynder
25. august 2004 - 08:36 #7
Bak: Kan du forklare mig hvad forskellen er på EnableCalculation = false og  Application.Calculation =xlCalculationManual.
Jeg har bygget mit projekt op på den måde at 9 ud af 12 ark altid er sat til EnableleCalculation = false, disse ark bliver sat = true når jeg aktiverer arkene og = false når jeg vælger et andet ark. De sidste 3, hvor brugeren i øvrigt kun skal bruge det første, står altid til = true medmindre jeg kører nogle af mine mange makroer... nå nu fik jeg lige beskeden igen bare ved ak klikke for at åbne Module1 i VBA
Avatar billede gider_ikke_mere Nybegynder
27. august 2004 - 10:39 #8
Jeg har ikke prøvet at sætte Application.DisplayAlerts = False da skærmbilledet ikke opdaterer sig selv når fejlen har været der.
Ment på den måde at hvis jeg får meddelelsen ved luk af en UserForm bliver billedet af UserFormen stående på skærmen, indtil jeg scroller lidt frem og tilbage i dokumentet. Der er altså noget galt.
Derfor ønsker jeg ikke at bruge den formel, jeg skal have fundet årsagen!
Avatar billede bak Forsker
27. august 2004 - 14:05 #9
akyhne -> det er lidt svært at sidde og gætte på hvad der er galt.

prøv at vise koden, så kan den måske give os et hint.
Avatar billede gider_ikke_mere Nybegynder
03. september 2004 - 14:59 #10
Det er som sagt ikke ved en bestemt makro at fejlen kommer, men generelt når jeg arbejder i projektet. bare ved en ændring af en celle kan fejlen komme.
Jeg bruger ikke autofill.
Bak: Kan du forklare mig hvad forskellen er på EnableCalculation = false og  Application.Calculation =xlCalculationManual.
Avatar billede gider_ikke_mere Nybegynder
03. september 2004 - 15:01 #11
Her er dog koden til WorksheetChange:

Private Sub Worksheet_Change(ByVal Target As Range)

ProtectedJa = False
If Worksheets("PROJEKT").ProtectContents = True Then
    ActiveSheet.Unprotect
    ProtectedJa = True
End If


On Error GoTo SLUT
'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD PLC
If Target.Name.Name = "CPU_MRK" Then
    Range("SERIE").Value = "VÆLG SERIE"
    Range("CPU").Value = "VÆLG CPU"
    Range("SLOT").Value = "VÆLG SLOT (KUN FOR ALLEN BRADLEY & SIEMENS 400 SERIE)"
    Range("SLOT3_18").Select
    Selection.ClearContents

    Range("CPU_MRK").Select
End If
 


i = 1
For i = i To 18

    If Target.Name.Name = ("SLOT" & i) Then
        If ActiveCell.Value = "" Or ActiveCell.Value = "VÆLG CPU" Then
            Ark2.OLEObjects("SaetIO" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("SaetIO" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

If Target.Name.Name = "SERIE" Then
    Application.ScreenUpdating = False
    Range("SLOT3_18").Select
    Selection.ClearContents
    Range("SERIE").Select
   
    If ActiveCell.Value = "400 SERIE" Then
       
        ActiveCell.Offset(3, -1).Value = Ark6.Range("PLCSIDE1").Value * 10
        i = 14
        For i = i To 18
            Range("SLOT" & i).Select
            ActiveCell.RowHeight = 12.75
        Next
       
    Range("CPU").Select
    ActiveCell.FormulaR1C1 = "VÆLG CPU I S7-400 SERIEN"
    'Range("SLOT2").Select
    'ActiveCell.FormulaR1C1 = "=CPU_FORSYNING"
   
    Range("SLOT3").Select
    ActiveCell.FormulaR1C1 = "=CPU"
   
    Ark2.OLEObjects("SaetIO1").Object.BackColor = &H8000&
    Ark2.OLEObjects("SaetIO2").Object.BackColor = &H8000&
    Ark2.OLEObjects("SaetIO3").Object.BackColor = &H8000&
        Range("SERIE").Select
    Else
        i = 14
        For i = i To 18
            Range("SLOT" & i).Select
            ActiveCell.RowHeight = 0
        Next
        Range("SERIE").Select
    End If


    If ActiveCell.Value = "300 SERIE" Then
        ActiveCell.Offset(3, -1).Value = ""
        Range("CPU").Select
        ActiveCell.FormulaR1C1 = "VÆLG CPU I S7-300 SERIEN"
        Range("SLOT1").Select
        ActiveCell.FormulaR1C1 = _
        "=IF(OR(EXACT(""ALLENBRADLEY"",R[-4]C),EXACT(""SIEMENS"",R[-4]C)),OFFSET(DATA2!CPU_LISTE,R[-2]C[9],1,1,1),""VÆLG CPU"")"
        Range("SLOT2").Select
        ActiveCell.FormulaR1C1 = _
        "=IF(OR(EXACT(""ALLENBRADLEY"",R[-5]C),EXACT(""SIEMENS"",R[-5]C)),OFFSET(DATA2!CPU_LISTE,R[-3]C[9],2,1,1),""VÆLG CPU"")"
        Range("SLOT3").Select
        Selection.ClearContents
               
        Range("SERIE").Select
    End If
   
    If ActiveCell.Value = "200 SERIE" Then
        ActiveCell.Offset(3, -1).Value = ""
        Range("CPU").Select
        ActiveCell.FormulaR1C1 = "VÆLG CPU I S7-200 SERIEN"
        Range("SLOT1").Select
        ActiveCell.FormulaR1C1 = _
        "=IF(OR(EXACT(""ALLENBRADLEY"",R[-4]C),EXACT(""SIEMENS"",R[-4]C)),OFFSET(DATA2!CPU_LISTE,R[-2]C[9],1,1,1),""VÆLG CPU"")"
        Range("SLOT2").Select
        ActiveCell.FormulaR1C1 = _
        "=IF(OR(EXACT(""ALLENBRADLEY"",R[-5]C),EXACT(""SIEMENS"",R[-5]C)),OFFSET(DATA2!CPU_LISTE,R[-3]C[9],2,1,1),""VÆLG CPU"")"
        Range("SLOT3").Select
        ActiveCell.FormulaR1C1 = ""
               
        Range("SERIE").Select
    End If
   
    If ActiveCell.Value = "1746 SERIE" Then
        ActiveCell.Offset(3, -1).Value = Ark6.Range("PLCSIDE1").Value * 10
        Range("CPU").Value = "VÆLG CPU I 1746 SERIEN"
        Range("SLOT").Value = "VÆLG SLOT (KUN FOR ALLEN BRADLEY & SIEMENS 400 SERIE)"
    End If
        If ActiveCell.Value = "1756 SERIE" Then
        ActiveCell.Offset(3, -1).Value = Ark6.Range("PLCSIDE1").Value * 10
        Range("CPU").Value = "VÆLG CPU I 1756 SERIEN"
        Range("SLOT").Value = "VÆLG SLOT (KUN FOR ALLEN BRADLEY & SIEMENS 400 SERIE)"
    End If

   
Application.ScreenUpdating = True
End If

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD FLEX
i = 2
For i = i To 18
    If Target.Name.Name = ("FLEX" & i) Then
        If ActiveCell.Value = "" Or ActiveCell.Value = "VÆLG DECENTRAL I/O" Then
            Ark2.OLEObjects("SaetFLEX" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("SaetFLEX" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

If Target.Name.Name = "FLEX_CPU_MRK" Then
    If ActiveCell.Value = "ALLENBRADLEY" Then
        Range("FLEXSERIE").Select
        Selection.ClearContents
        ActiveCell.RowHeight = 0
        Range("FLEX").Select
        ActiveCell.RowHeight = 12.75
        Range("FLEXSLOT").Select
        ActiveCell.RowHeight = 0
       
        Range("FLEX_CPU_MRK").Select
    End If
End If

If Target.Name.Name = "FLEX_CPU_MRK" Then
    If ActiveCell.Value = "SIEMENS" Then
        Range("FLEXSERIE").Select
        ActiveCell.RowHeight = 63.75
        Range("FLEX").Select
        ActiveCell.RowHeight = 0
        Range("FLEXSLOT").Select
        ActiveCell.RowHeight = 12.75
       
        Range("FLEX_CPU_MRK").Select
    End If
End If

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
'D                              D
'D            ALLE SERVO        D
'D                              D
'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

If ActiveCell.Row > TOPSERVO And ActiveCell.Row < BUNDSERVO Then

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD SERVO1
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO1_" & i) Then
        If ActiveCell.Value = "" Then
            Ark2.OLEObjects("saetSERVO1_" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("saetSERVO1_" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD SERVO2
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO2_" & i) Then
        If ActiveCell.Value = "" Then
            Ark2.OLEObjects("saetSERVO2_" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("saetSERVO2_" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD SERVO3
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO3_" & i) Then
        If ActiveCell.Value = "" Then
            Ark2.OLEObjects("saetSERVO3_" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("saetSERVO3_" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD SERVO4
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO4_" & i) Then
        If ActiveCell.Value = "" Then
            Ark2.OLEObjects("saetSERVO4_" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("saetSERVO4_" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD SERVO5
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO5_" & i) Then
        If ActiveCell.Value = "" Then
            Ark2.OLEObjects("saetSERVO5_" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("saetSERVO5_" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD SERVO6
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO6_" & i) Then
        If ActiveCell.Value = "" Then
            Ark2.OLEObjects("saetSERVO6_" & CStr(i)).Object.BackColor = &H8000&
        Else
            Ark2.OLEObjects("saetSERVO6_" & CStr(i)).Object.BackColor = &HFF&
        End If
    End If
Next


'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD  Servo
i = 1
For i = i To 6
    If Target.Name.Name = ("SERVO" & i & "TYPE_VALGT") Then
    AKTUEL_SERVO_NR = i
    SERVO_ARBEJD
    End If
Next
End If

'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD  Frekvens
i = 1
For i = i To 32
    If Target.Name.Name = ("FREKVENS" & i) Then
        If ActiveCell.Value = "" Or ActiveCell.Value = "VÆLG PRODUCENT" Then
            ActiveCell.Offset(2).Range("A1:A19").Select
            Selection.EntireRow.Hidden = True
        Else
            ActiveCell.Offset(2).Range("A1:A19").Select
            Selection.EntireRow.Hidden = False
        End If
    Range("FREKVENS" & i).Select
    End If
Next
'FREKVENS1


SLUT:
If ProtectedJa = True Then
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
End If

End Sub
Avatar billede gider_ikke_mere Nybegynder
16. september 2004 - 08:56 #12
Lukker snart!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester