• 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.

Verjaardagskaart en foutmelding.

Status
Niet open voor verdere reacties.

corania17

Gebruiker
Lid geworden
1 okt 2012
Berichten
260
Beste forumlezer.
Ik heb een Excel file gemaakt die mij laat zien wie er vandaag jarig is.
Dit werkt prima alleen komt er een foutmelding die erg storend is.
De foutmelding is, Deze eigenschap of methode wordt niet ondersteund door dit object.
Het programma werkt goed waarom dan deze foumelding?
Ik heb het programma aangepast maar de fout blijft komen.
Iemand een idee om de foutmelding niet meer te laten verschijnen?

Wat verder de bedoeling van de Excel file is is dat als er iemand jarig is dat er automatisch een digitale verjaardagskaart wordt verstuurd.
Ik heb van Ron de Bruin de programmering daarvoor gekopieerd maar weet niet hoe ik dit nu moet realiseren.
Als iemand mij daar mee zou kunnen helpen dan heel graag.
Mocht het niet lukken kan het ook nog handmatig.

Ik gebruik Excel 2013

Bij voorbaat bedankt.
 

Bijlagen

Hoi,
Code:
Code:
Private Sub Workbook_Open()
    Dim Tekst As String, n As Long, c As Range, VerjDitJaar As Date

    Tekst = "Opgelet"
    n = 0
    For Each c In Range("C4:C" & Range("C" & Rows.Count).End(xlUp).Row)
        VerjDitJaar = DateSerial(Year(Date), Month(c), Day(c))
        If VerjDitJaar <= Date + 7 And VerjDitJaar >= Date Then
            Tekst = Tekst & Chr(10) & c.Offset(, -1) & " is op " & VerjDitJaar & " jarig"
            n = n + 1
        End If
    Next
    If n > 0 Then MsgBox Tekst, vbInformation + vbOKOnly, "Verjaardagskalender"
    
End Sub
Automatisch mailen kan ik straks eens naar kijken, nu moet ik ervandoor
 
Verjaardagskaart en foutmelding

Beste gast0660,

Dit heb ik ook geprobeerd en het werkte goed. De volgende dag was het echter helemaal verkeerd omdat de code niet meer werkte. Misschien dat ik iets te veel heb gewist. Ben dus benieuwd naar morgen. Toch al bedankt want nu werkt het helemaal goed. Ik hoop dat je me nog met het tweede item kunt helpen want mailen via Gmail blijft een probleem.
Heb vandaag nog eens geprobeerd of de file nog werkt en het werkt perfect.
Dus heb ik toch wat te veel gewist zonder dat ik het heb gezien.
Ben ook nog bezig geweest met de mail via gmail maar daar kom ik niet uit.
Mocht u nog wat tijd hebben dan heel graag.

Groeten, Corania.
 
Laatst bewerkt:
Hoi Corania,
Ik heb ook een beetje moeten zoeken en puzzelen (Gmail) maar hierbij in bijlage de oplossing volgens uw vragen
Bij werkt het :thumb:
Maar volgende opmerkingen
Verander (natuurlijk) het rode gedeelte
Code:
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[COLOR="#FF0000"]Uw gmail adres[/COLOR]"
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "[COLOR="#FF0000"]Uw paswoord[/COLOR]"
Met volgende stukjes kan je wat spelen (is gewone html)
Code:
body_text = "<p> <p align='left'><font size='2' face='arial' color='blue'><i> Beste " & name_to & ", </p>" & vbNewLine
    body_text = body_text & "<p> <p align='CENTER'><font size='3' face='arial' color='red'><i> Gelukkige verjaardag vanwege de parochie! </p>" & vbNewLine
    body_text = body_text & "<left><p align='CENTER'>[COLOR="#008000"]<img src=""http://s33.postimg.org/o5sru4pyn/verjaardag.jpg"">[/COLOR]" & vbNewLine
    body_text = body_text & vbNewLine & "<left><p><p align='Left'><font size='3' face='arial' color='blue'><i>Groetjes<br>" & "Het parochieteam</p>"
Het groene stukje is een link naar de foto dat je in mijn vbtje kan zien, daar kan je zelf een foto uploaden, er zijn ook andere (effe googelen), maar hier de link om een eigen foto, kaartje up te loaden
http://postimage.org/?lang=dutchhttp://
Nadien moet je het groene stukje vervangen door uw eigen link
Dit stukje code moet je aanpassen naar het aantal medewerkers
Code:
 For i = 4 To 50
Start op lijn 4 (volgens uw vbtje) en aantal medewerkers
Test eerst mijn bestandje door uw emailadres en paswoord (rode gedeelte) aan te pasen.
Als er nog vragen zijn hoor ik het wel
 

Bijlagen

Verjaardagskaart en foutmelding

Beste gast0660,

Ik heb uw aangepaste file gedownload en gewijzigd en het werkt precies zoals ik het had bedoeld.
Heel erg bedankt voor uw hulp.
Ik moet nog even kijken hoe ik mijn eigen kaart op de PC er in kan krijgen.
Mocht ik er niet uit komen laat ik nog heel even wat weten, maar ik denk wel dat het gaat lukken.
Nogmaals heel hartelijk dank en ik was zeer verrast dat het toch kon werken.

Groeten, Corania
 
Hoi Corania,
mooi zo:thumb:
Ondertussen nog een paar kleine aanpassingen, onder andere als er geen verjaardagen zijn kreeg je de tweede MsgBox toch te zien, wat niet de bedoeling is. (had ik over het hoofd gezien:o),hierbij de code.
Code:
Private Sub Workbook_Open()
  Dim Tekst As String, n As Long, c As Range, VerjDitJaar As Date
Sheets("Verjaardagen").Activate
Tekst = "Opgelet"
    n = 0
    For Each c In Range("D2:D" & Range("D" & Rows.Count).End(xlUp).Row)
        VerjDitJaar = DateSerial(Year(Date), Month(c), Day(c))
        If VerjDitJaar <= Date And VerjDitJaar >= Date Then
            Tekst = Tekst & Chr(10) & c.Offset(, -1) & " is op " & VerjDitJaar & " jarig"
            n = n + 1
        End If
    Next
    With Sheets("Verjaardagen")
    If n > 0 Then MsgBox Tekst, vbInformation, "Verjaardagskalender"
    If n > 0 Then
   If MsgBox("Verjaardagskaartje(s) sturen?", vbOKCancel, "Mailen?") = vbOK Then Call method2
    End If
    End With
End Sub
Uw eigen foto gebruiken is gewoon kwestie van de link aan te passen (groene gedeelte in mijn vorig postje)

Suc6
 
Hoi,
Zo kan het ook
Code:
If n > 0 Then
  If MsgBox(Tekst & vbCr & "Verjaardagskaartje(s) sturen?", vbOKCancel, "Mailen?") = vbOK Then Call method2
End If
 
Verjaardagskaart en foutmelding

Beste gast0660,
Hartelijk dank voor het meedenken en de oplossing.
Het werkt nu perfect op een klein detail na. Niet iedereen heeft een emailadres of geeft dit niet door. Ik krijg dan wel de melding kaart versturen maar dan wordt er niets verstuurd.
Zou het mogelijk zijn dat als de cel in kolom L geen emailadres bevat dat er dan een melding komt dat er geen emailadres bekend is?
Ik kan het wel zien of er actie wordt ondernomen om de mail te versturen en als er geen email wordt verstuurd zie ik ook geen actie, maar toch denk ik dat het wel verstuurd zal zijn.
Het is natuurlijk ook mogelijk om achteraf te kijken of de persoon een emailadres heeft en zo niet dat er dan een kaart per post wordt verstuurd.
Toch is het nu al een heel leuk programma geworden voor verenigingen e.d. die verjaardagen bij zouden willen houden.
Ik ben er erg blij mee, nogmaals hartelijk bedankt.

Groeten, Corania.
 
Beste Coriana,
Zal morgen wat verder denken, vandaag iets teveel genoten van zonnige terrasjes en en paar biertjes.:)
 
Hoi Coriana,
Geeft dit de nodige zielerust?
Code in module
Code:
Sub method2()

    For i = 4 To 50
        If Day(VBA.Date) = Day(Range("c" & i).Value) And Month(VBA.Date) = Month(Range("c" & i).Value) Then
            Call sendbday2(Range("b" & i).Value, Range("l" & i).Value)
           If Not Range("l" & i).Value = "" Then MsgBox ("Email voor:" & vbCr & Range("b" & i).Value & vbCr & "is verzonden."), vbInformation, "Verzenden"
        If Range("l" & i).Value = "" Then MsgBox ("Er is geen Emailadres beschikbaar voor:" & vbCr & Range("b" & i).Value), vbInformation, "Aandacht"
        End If
    Next
End Sub
 
Verjaardagskaart en foutmelding

Beste Dotchjack

Dit is precies wat ik voor ogen had.
Ik hoop dat de biertjes en het terrasje goed zijn bevallen?
Nogmaals hartelijk bedankt en dit geeft mij wel de nodige zielenrust.
Ik ga het onderwerp nu afsluiten.

Met vriendelijke groet, Corania.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan