• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

VBA: Foutcode 1004

Status
Niet open voor verdere reacties.

RWMJ

Gebruiker
Lid geworden
17 jan 2022
Berichten
25
Beste,

Ik ben voor de hobby een kalender aan het maken in excel aan de hand van een voorbeeld.
Youtube link naar voorbeeld: https://youtu.be/IWlCloFiWw4

Het voorbeeldbestand van wat ik aan het namaken was zit ook in de bijlage.

tldr: ik maak een activiteitenkalender waar er per jaar d.m.v. vba een extra tabblad gemaakt moet worden dat de naam van dat jaartal heeft. De functie van dat tabblad is om de activiteiten te bewaren die op die datum in de kalender worden gezet. Wanneer je dan weer op deze dag klikt dan haalt vba de gegevens vanuit de jaartal sheet en zet ze als samenvatting op de dag in de kalender.

De problemen:
1. Sub addnewheet() werkt niet naar behoren. De sub hernoemt de originele sheet waar de kalender op staat naar het jaartal ipv dat hij een nieuwe maakt met het desbetreffende jaartal. Ook moeten er in de 1e rij per kolom de datums worden geplakt, dat doet deze ook niet.

Code:
Sub AddNewSheet()
Dim ShtNm As String
ShtNm = Blad1.Range("ScYear").Value
Sheets.Add
ActiveSheet.Name = ShtNm
Sheets("2018").Range("A1:NB1").Copy
Sheets("" & ShtNm & "").Range("A1:NB1").PasteSpecial xlPasteAll
Sheets("" & ShtNm & "").Range("A1") = "1/1/" & ShtNm
Application.CutCopyMode = False
'Sheets("" & ShtNm & "").Visible = xlHidden
Blad1.Activate
End Sub

2. Sub loadmonth () geeft steeds de foutcode 1004, maar ik vermoed dat dat is omdat er niks te laden valt uit de andere sheet.
Code:
Sub LoadDay()
With Blad1
.Calculate
.Range("B2").Value = True
ShtNm = .Range("ScYear")
ScCol = .Range("M42").Value
.Range("M4:M40").ClearContents
.Range("M4:M40").Value = Range(Sheets("" & ShtNm & "").Cells(2, ScCol), Sheets("" & ShtNm & "").Cells(38, ScCol)).Value
.Range("B2").Value = False
End With
End Sub

Ik hoor graag waar het fout gaat, ik heb echt gezocht maar ik kan het helaas nog niet vinden.

Bijlage:
1."IBKI planning" dit is waar de fouten in zitten.
2. "Kalender die ik namaak" dit is zoals het zou moeten zijn.
 

Bijlagen

  • IBKI Planning.xlsm
    43,2 KB · Weergaven: 11
  • Kalender die ik namaak.xlsm
    88 KB · Weergaven: 4
Je kan in debug mode kijken op welke regel het fout gaat.
 
Nu zou hij het moeten doen
 

Bijlagen

  • Kalender die ik namaak(jp).xlsm
    111,4 KB · Weergaven: 16
Dag beiden,

Hartelijk dank voor jullie reactie, ik heb de debugger net geraadpleegd.
Ik heb het bestand geopend om even te kijken en ik tref nog een fout aan (Fout type 13:Type komen niet overeen)

De fout zit in onderstaande sub, specifiek deze regel

Code:
.Range("M4:M40").Value = Range(Sheets("" & ShtNm & "").Cells(2, ScCol), Sheets("" & ShtNm & "").Cells(38, ScCol)).Value


Code:
Sub LoadDay()
With Sheet1
.Calculate
.Range("B2").Value = True
ShtNm = .Range("ScYear")
ScCol = .Range("M42").Value
.Range("M4:M40").ClearContents
.Range("M4:M40").Value = Range(Sheets("" & ShtNm & "").Cells(2, ScCol), Sheets("" & ShtNm & "").Cells(38, ScCol)).Value 
.Range("B2").Value = False
End With
End Sub
 
Wijzig:
Sheets("" & ShtNm & "")
Range("ScYear")

In:
Sheets(ShtNm)
Range(ScYear)
 
Laatst bewerkt:
error omzeild
 

Bijlagen

  • Kalender die ik namaak(jp2).xlsm
    116,1 KB · Weergaven: 14
Met On Error omzeil je geen fouten, je ziet ze alleen niet.
Kennelijk heb je #5 niet gelezen.
 
Beste beiden,

Mijn dank is supergroot. Ik ga weer verder met puzzelen, heel erg bedankt. Ik vind het knap dat jullie dat zo snel kunnen zien.

Groeten,
Robin
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan