anoniem Geplaatst: 11 november 2014 Delen Geplaatst: 11 november 2014 Naar aanleiding van deze post (http://computertotaal.nl/forumarchief/11-anders-software/175915-excel--genereren-samenvatting-van-diverse-tabbladen) heb ik onderstaande code gemaakt. Wanneer ik deze stap laat draaien, opent Excel wel de juiste sheet (overview) maar er komen geen gegevens in. Waar gaat dit mis? Sub UpdateOverview() Dim i As Integer Dim LopendeProjecten As Integer Sheets("overview").Select On Error Resume Next LopendeProjecten = Sheets.Count Range("A" & i + 1) = Sheets(i).Name Range("B" & i + 1) = Sheets(i).Range("B7") Range("C" & i + 1) = Sheets(i).Range("B14") Range("D" & i + 1) = Sheets(i).Range("C14") Range("E" & i + 1) = Sheets(i).Range("B17") Range("F" & i + 1) = Sheets(i).Range("C17") End Sub Link naar reactie
Oscar53 Geplaatst: 11 november 2014 Delen Geplaatst: 11 november 2014 http://office.microsoft.com/nl-nl/help/gegevens-op-meerdere-werkbladen-samenvoegen-HP010095249.aspx Link naar reactie
w.a.gerritsen@gmail.com Geplaatst: 14 november 2014 Delen Geplaatst: 14 november 2014 On Error Resume Next zorgt ervoor dat (relevante) foutmeldingen afgevangen worden. Dit moet je dus eigenlijk niet gebruiken! De fout zit hem erin dat i gedurende de hele sub gelijk is aan 0, en Sheets(0) bestaat niet. Deze begint namelijk te tellen bij 1. Beter zou zijn: Sub UpdateOverview() Dim i As Integer Dim LopendeProjecten As Integer Sheets("overview").Select LopendeProjecten = Sheets.Count For i = 1 To LopendeProjecten If Sheets(i).Name = "overview" Then Else Range("A" & i + 1) = Sheets(i).Name Range("B" & i + 1) = Sheets(i).Range("B7") Range("C" & i + 1) = Sheets(i).Range("B14") Range("D" & i + 1) = Sheets(i).Range("C14") Range("E" & i + 1) = Sheets(i).Range("B17") Range("F" & i + 1) = Sheets(i).Range("C17") End If Next i End Sub Link naar reactie
Aanbevolen berichten
Gearchiveerd
Dit topic is nu gearchiveerd en gesloten voor verdere reacties.