Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Visual Basic probleempje

Pagina: 1
Acties:
  • 421 views

  • Joindry
  • Registratie: Oktober 2009
  • Laatst online: 25-11 20:53

Joindry

- I'm afraid I can't do that -

Topicstarter
Op mn werk werk ik met regelmaat met een paar macros, die iemand anders opmaakt voor me, om cijfers te trekken en te controleren.
Net voor het verlof kreeeg ik een nieuwe door die werkte op de schrijver zijn pc maar werkt dus niet bij mij.
Ik zelf ken absoluut niks van programmeren. Kan iemand van jullie me helpen met het probleem te duiden aub. 9/10 is het een kleintje.

Ik krijg bij het runnen van de VB macro in een excel tabel een runtime error 1004.
In de debugmodus geeft hij een fout in deze lijn

Afbeeldingslocatie: http://tweakers.net/ext/f/yvajP0GntJqwfrF3d5RbvPPm/full.jpg

Alle info of tips zijn welkom, mijn wetende collega is nog twee weken met vakantie en onze IT afdeling houdt zich niet bezig met dergelijke problemen... Ik heb de cijfers nodig :(

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 12:00

Armageddon_2k

Trotse eigenaar: Yamaha R6

En wat voor fout krijg je? ;)
Dan kunnen we er iets meer mee.

Als ik zo kijk, heb je het hier over VBA macro's in Excel. <-- Voortaan even erbij melden.

Ik gok
Optie1
(vooral omdat het bij de maker van de macro wel werkt), dat je een bepaalde refenetie mist.
Dit kan je zien door bij je references te kijken naar Missing

Optie2
Er wordt verwezen naar een andere workbook (WageTypeReporter), staat die wel op jou pc?

[ Voor 99% gewijzigd door Armageddon_2k op 03-08-2011 11:38 ]


  • Joindry
  • Registratie: Oktober 2009
  • Laatst online: 25-11 20:53

Joindry

- I'm afraid I can't do that -

Topicstarter
Armageddon_2k schreef op woensdag 03 augustus 2011 @ 11:33:
En wat voor fout krijg je? ;)
Dan kunnen we er iets meer mee.

Als ik zo kijk, heb je het hier over VBA macro's in Excel. <-- Voortaan even erbij melden.

Ik gok
Optie1
(vooral omdat het bij de maker van de macro wel werkt), dat je een bepaalde refenetie mist.
Dit kan je zien door bij je references te kijken naar Missing

Optie2
Er wordt verwezen naar een andere workbook (WageTypeReporter), staat die wel op jou pc?
Hij geeft idd "reference not valid"
Er wordt enkel verwezen naar andere sheets in hetzelfde document. (knip en plakwerk) het gebied staat groot genoeg
de wagetype reporter is een tabblad in het bestand. (spelling reeds gecontroleerd)

en waar vind ik optie één? :(

  • H004
  • Registratie: Maart 2006
  • Laatst online: 28-05 19:55
Joindry schreef op woensdag 03 augustus 2011 @ 11:42:
[...]

Er wordt enkel verwezen naar andere sheets in hetzelfde document. (knip en plakwerk) het gebied staat groot genoeg
Dat kun je wel stellen ja: er wordt verwezen naar zo'n 7.3 miljoen cellen. :) Lijkt me wat overdreven. Werken jullie wel beide in Excel 2007 of hoger? 2003 kan nl. niet met zo'n bereik omgaan, omdat het minder regels per werkblad heeft.

  • gvdh
  • Registratie: December 2009
  • Laatst online: 26-11 18:20
Heb je minstens dezelfde versie van Excel? Deze code lijkt uit Excel 2007 te komen (versie 12). Ik vermoed dat deze code niet gaat werken in Excel 2003 en lager...

  • Joindry
  • Registratie: Oktober 2009
  • Laatst online: 25-11 20:53

Joindry

- I'm afraid I can't do that -

Topicstarter
excell 2007 aanwezig
en huidige lijst is ong 2milj lijnen lang dus manueel werk is niet echt een optie

  • H004
  • Registratie: Maart 2006
  • Laatst online: 28-05 19:55
En een werkblad met als naam "Sheet1" bestaat ook? Als jij een Nederlandse versie hebt, heet het bij jou "Blad1"...

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 12:00

Armageddon_2k

Trotse eigenaar: Yamaha R6

Wat je kan doen om je probleem te vinden:
Selecteer de afzonderlijke delen uit de macro, zoals bijvoorbeeld:

"Sheet1!R3C1"

Druk op rechtmuis en dan "add to watch".
Dan wordt deze toegevoegd aan je watchlist, het onderdeel dat het probleem veroorzaakt zal ook daar dan ook een Reference Exception geven. Zo kan je zien welk onderdeel foutief is.

[ Voor 6% gewijzigd door Armageddon_2k op 03-08-2011 11:54 ]


  • Joindry
  • Registratie: Oktober 2009
  • Laatst online: 25-11 20:53

Joindry

- I'm afraid I can't do that -

Topicstarter
hey we zitten al bij de volgende melding...
Fout één was dus inderdaad een bereik. mijn brontabel was 2milj lijnen lang, maar het nieuwe doc is dus blijkbaar gemaakt in een 2003versie, en telt dus maar 65000 lijnen. Maar dat is overkomelijk.
Nu zit ik met deze error (het vlot heel goed vandaag allemaal :(

Unable to get the pivotsfiels proprety of the pivot table class.


Cells(3, 1).Select
With ActiveSheet.PivotTables("PivotTable2").PivotFields("LComp.")
.Orientation = xlRowField
.Position = 1

Ik herhaal, ik heb echt geen idee waar ik mee bezig ben hier. Dank voor de hulp, but speak slowly :P

[ Voor 7% gewijzigd door Joindry op 03-08-2011 12:00 ]


  • Raging_Trancer
  • Registratie: Mei 2006
  • Laatst online: 05-06-2022
Probeer eens;

code:
1
2
3
4
5
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, _
    SourceData:=ActiveWorkbook.Sheets("Wagetype reporter").Range("A1:G" & Application.Rows.Count), _
    Version:=xlPivotTableVersion12).CreatePivotTable _
    TableDestination:=ActiveWorkbook.Sheets("Sheet1").Range("A3"), _
    TableName:="PivotTable2", DefaultVersion:=xlPivotTableVersion12


Zo even uit het blote hoofd, mogelijk geef je veel meer data op dan strikt noodzakelijk, let op default waardes en of deze strikt noodzakelijk zijn. Bij SourceData en TableDestination ben ik er van uit gegaan dat je een range moet opgeven.

Reden dat het (hoogst waarschijnlijk) mis gaat, is dat je verkeerde waarden opgeeft voor de ranges (zoals jij ze gebruikt werken ze goed in het werkblad, maar niet in VBA). Probeer ook referenties te gebruiken en je sheets VB namen te geven. Een werkblad is namelijk heel eenvoudig qua tabnaam aan te passen, maar niet in VBA :)

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 12:00

Armageddon_2k

Trotse eigenaar: Yamaha R6

Het is wel licht vervelend dat je zelf niet weet waar je mee bezig bent. Kan de persoon die deze macro's maar je er niet bij helpen? Want de vorige fout was iets wat een programeur zelf vrij snel had moeten kunnen vinden.
We zijn hier niet om debugger voor je te spelen.

  • Joindry
  • Registratie: Oktober 2009
  • Laatst online: 25-11 20:53

Joindry

- I'm afraid I can't do that -

Topicstarter
Armageddon_2k schreef op woensdag 03 augustus 2011 @ 12:00:
Het is wel licht vervelend dat je zelf niet weet waar je mee bezig bent. Kan de persoon die deze macro's maar je er niet bij helpen? Want de vorige fout was iets wat een programeur zelf vrij snel had moeten kunnen vinden.
We zijn hier niet om debugger voor je te spelen.
zie ts, met vakantie :( en ik zit met de gebakken peren

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 12:00

Armageddon_2k

Trotse eigenaar: Yamaha R6

Ah je bedoelt met "Net voor het verlof", het verlof van de programeur. Vooruit dan willen we nog wel even :P

  • Joindry
  • Registratie: Oktober 2009
  • Laatst online: 25-11 20:53

Joindry

- I'm afraid I can't do that -

Topicstarter
Armageddon_2k schreef op woensdag 03 augustus 2011 @ 12:04:
Ah je bedoelt met "Net voor het verlof", het verlof van de programeur. Vooruit dan willen we nog wel even :P
srry :(

ik mag nog een viertal weken wachten op mijn verlof :(

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Joindry schreef op woensdag 03 augustus 2011 @ 11:01:
Ik zelf ken absoluut niks van programmeren. Kan iemand van jullie me helpen met het probleem te duiden aub. 9/10 is het een kleintje.
Dan ga ik dit topic toch echt sluiten. Op deze manier is het een Scriptrequest/Kan iemand even ... ?

Op deze manier is het namelijk nogal 1 richtings verkeer. We verwachten hier van een TS ten minste dat hij zelf wat onderzoek doet, en ook zelf wat inbreng heeft in het topic.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”

Pagina: 1

Dit topic is gesloten.