Ga naar inhoud

Excel 97 herrekenen waarde in een cel met gebruikersfunctie


Aanbevolen berichten

Ik kom het volgende probleem tegen binnen een werkblad met twee bladen en een eigen gemaakte gebruikersfunctie. Blad 1 bevat gegevens in een matrixvorm die worden bijgewerkt vanuit een andere toepassing. In blad 2 van het werkblad roep ik in diversie cellen een eigen gedefinieerde gebruikersfunctie op. Voorbeeld: In cel A2 in blad 2 staat de gebruikersfunctie = ret_cy("1500"). Deze Cel toont nu een opgezochte waarde uit blad 1 bijvoorbeeld het getal -50.00. Via een bijwerkfunctie wordt in blad 1 een nieuwe waarde voor de functie ret_cy("1500") vastgelegd bijvoorbeeld het getal -85.00. In blad 2 in cel A2 staat echter nog altijd de waarde -50.00 terwijl hier eigenlijk -85.00 zou moeten staan. Pas als ik zelf op de cel A2 ga staan en op de F2 toets druk gevolgd door de Enter-toets wordt de nieuwe waarde -85.00 getoond. Wie weet tips of trucs om het hierboven beschreven probleem aan te pakken.
Link naar reactie
Beste Dymic, De door jouw aangebrachte oplossing werkt perfect. Bij het menu optie Extra; tabblad Berekenen: berekening op "Automatisch" staat inderdaad al aan. Dit bracht dus geen uitkomst. Het forceren van het herrekenen van het tweede werkblad werkt perfect. Worksheets("Bladnaam").Calculate. De .calculate method heb ik nu in een aparte macro ondergebracht. Deze kan ik op een gewenst tijdstip aanroepen en wordt nu ook direct na het bijwerken van de gegevens in werkbad 1 aangeroepen. Nogmaals bedankt voor deze tip
Link naar reactie
Hoi Nicwilms, N.a.v. van je bericht in mijn box, plaats ik e.e.a. even op het forum. Zodoende kunnen anderen er misschien ook enige kennis mee opdoen en last but not least heb jij eerder kans geholpen te worden. Tenslotte weten 2 (of meer) mensen meer dan 1. [quote:95258d86bd]Beste Dymic, Helaas werkt de aangedragen methode alleen als ik via menu Extra; keuze Macro; een macro wijzig. Indien ik de macro de eerste maal oproep dan wordt er netjes herberekend. Indien ik de tweede keer de macro oproep voor het bijwerken van de berekenen in blad twee dan gebeurt er niets ook al zijn er in blad 1 in via Microsoft Query nieuwe gegevens binnengehaald. Ik heb de onderstaande commando's opgenomen in de betreffende macro: ActiveWorkbook.RefreshAll Calculate Het herrekenen of het gebruik van de F9 toets heeft in Excel 97 schijnbaar pas effect bij mij indien ik een wijziging aanbreng in de macro zelf en deze wijziging opsla. Ik sta voor een raadsel.[/quote:95258d86bd] En als je de Calculate methode aan roept vanuit een event? Deze code plaats je in "Microsoft Excel -objecten" - "ThisWorkbook", dus niet in een module [code:1:95258d86bd]Private Sub Workbook_SheetDeactivate(ByVal Sh As Object) Worksheets("Bladnaam").Calculate End Sub[/code:1:95258d86bd]
Link naar reactie
Vanavond heb ik zelf nog het een en ander geprobeerd en ben ik met toeval achter de oplossing van mijn probleem gekomen. De onderstaande code heeft mij uiteindelijk het gewenste resultaat opgeleverd nadat ik in het eerdere deel van de betreffende macro de datagegevens aanwezig in werkblad 1 via het verversen van een ODBC-koppeling heb bijgewerkt. Sheets("Bal.W&V").Select ' Onderstaande waarde moet gewijzigd worden anders werkt ' de calculate procedure niet, vreemd maar waar. ' De calculate is nodig om te forceren dat de ' gebruikersfuncties in het blad worden aangeroepen en ' opnieuw bepaald. Sheets("Bal.W&V").EnableCalculation = False Calculate ' Zet de onderstaande waarde weer op True. Sheets("Bal.W&V").EnableCalculation = True Ik wil een ieder bedanken die mij tips gegeven heeft waardoor ik het probleem heb kunnen oplossen. Ik hoop dat andere mensen er ook nog iets aan hebben.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...