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

Controle bij verzenden

Status
Niet open voor verdere reacties.

Disturbed7

Gebruiker
Lid geworden
7 feb 2009
Berichten
84
Ik heb een excel file waarin er zich verplichte velden bevinden.
Ik zou willen hebben dat er een controle gebeurd of ze ingevuld zijn wanneer de file wordt verzonden via email (dit gebeurt in excel zelf, dus de file wordt niet gesaved)

Is dit mogelijk ?
 
Bijvoorbeeld:
Code:
IF WorksheetFunction.CountBlank(Range("A1:A10")) = 0 Then
Uiteraard moet je nog een End If aan het eind van de code toevoegen.
Met vriendelijke groet,


Roncancio
 
Die code heb je zelf:p
Mijn coderegel is slechts een aanvulling.

Het zou globaal zo iets zijn:

Code:
IF WorksheetFunction.CountBlank(Range("A1:A10")) = 0 Then

' jouw code om te verzenden


End If

Met vriendelijke groet,


Roncancio
 
Heb eigenlijk totaal geen code, totaal geen kennis ervan :s.

Zit hier met ThisWorkbook en module1, maar weet niet waar ik wat moet ingeven.
 
Je zegt toch zelf dat het bestand verzonden wordt per email dus daar heb je dan toch code voor ?

Mvg

Rudi
 
Heb eigenlijk totaal geen code, totaal geen kennis ervan :s.

Zit hier met ThisWorkbook en module1, maar weet niet waar ik wat moet ingeven.

Ik was in de veronderstelling dat je met een macro vanuit Excel de gegevens verzend.

Met vriendelijke groet,


Roncancio
 
Heb dus enkel het excel bestand.

Van macro's ken ik dus niets.
Wil eigenlijk controle wanneer ik verzenden email doe ik excel.

Maar moest er een gecombineerde marco zijn, die zowel verzendt als controleert dan zou dat ideaal zijn :)
 
Heb dus enkel het excel bestand.

Van macro's ken ik dus niets.
Wil eigenlijk controle wanneer ik verzenden email doe ik excel.

Maar moest er een gecombineerde marco zijn, die zowel verzendt als controleert dan zou dat ideaal zijn :)

Als je zoekt op Outlook hier in Excel dan kan je het eea vinden aan code om vanuit Excel via Outlook te versturen.
Bijvoorbeeld hier.
Dan is het niet zo moeilijk om de controleregel(s) toe te voegen.

Met vriendelijke groet,


Roncancio
 
Om bestand te versturen kijk op volgende link
http://www.rondebruin.nl/sendmail.htm
@Roncancio, ik denk dat TS al blij zal zijn als zijn bestand verstuurd geraakt en niet dat zijn agenda tegelijkertijd aangepast wordt :D

Mvg

Rudi
 
Ik heb nu volgende code:


Sub Mail_workbook_Outlook_1()
'Working in 2000-2007
'This example send the last saved version of the Activeworkbook
Dim OutApp As Object
Dim OutMail As Object

If WorksheetFunction.CountBlank(Range("A1:A2")) = 0 Then

Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)

On Error Resume Next
With OutMail
.To = "mail@mail.be"
.CC = ""
.BCC = ""
.Subject = "Nieuwe relaties"
.Body = ""
.Attachments.Add ActiveWorkbook.FullName
'You can add other files also like this
'.Attachments.Add ("C:\test.txt")
.Send 'or use .Display
End With
On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing
Else: MsgBox "Vul verplichte velden in"
End If
End Sub


De mail wordt nu enkel verzonden als bepaalde velden ingevuld zijn.
Enige wat niet lukt, is het doorsturen van de file als bijlage.
Hoe moet dit gebeuren?
 
Code:
Sub Offerte_mail()
If WorksheetFunction.CountBlank(Range("A1:A5")) = 0 Then
'
    Set App = CreateObject("Outlook.Application")
    Set Itm = App.CreateItem(0)
     
    With Itm
        .Subject = Range("A1").Value
        .To = Range("A2").Value
        .CC = Range("A3").Value
        .body = "Bijgaand de door gevraagde offerte als pdf bestand." & vbCrLf & vbCrLf
        .Attachments.Add (Range("A4").Value)
        .Send
    End With
End If
End Sub

Bovenstaande code werkt alleen als de cellen in A1 t/m A5 zijn ingevuld.
Er wordt een bericht gestuurd naar het emailadres dat in cel A2 staat.
Een CC naar het emailadres in cel A3.
Het onderwerp staat in cel A1.
Het bestand in cel A4 wordt bijgevoegd.

Edit:

Je moet ook een verwijzing maken naar Outlook. Hoe?

- Ga naar de Visual Basic Editor. (Extra - Macro - Visual Basic Editor).
- Ga vervolgens naar Extra - Verwijzingen.
- Vink aan Microsoft Outlook 11.0 Object Library.
- Klik op Ok.

Met vriendelijke groet,


Roncancio
 
Ok bedankt, ga ik dadelijk eens testen.

Ik zou ook nog op de file een knop willen zetten die alles dan automatisch doen, dus geen marco uitvoeren meer klikken. Is dit mogelijk?
 
Ok bedankt, ga ik dadelijk eens testen.

Ik zou ook nog op de file een knop willen zetten die alles dan automatisch doen, dus geen marco uitvoeren meer klikken. Is dit mogelijk?

Ja, maar wil je nu een knop en niet meer klikken?
Dat lijkt mij tegenstrijdig.:cool:

Hoe wil je de macro activeren?

Met vriendelijke groet,


Roncancio
 
Waarschijnlijk bedoelt hij ALT-F8 >> Macro uitvoeren
Beeld >> Werkbalken >> Formulieren >> Opdrachtknop >> Knop tekenen op je werkblad >> Macro Toewijzen >> OK

Mvg

Rudi
 
Laatst bewerkt:
Oei :)

Ik wil een knop "Af" op de file hebben. Wanneer je daar op klikt moet de file verzonden worden, maar indien er verplichte velden niet ingevuld zijn moet er een boodschap opkomen.

Met de knop erop is het gebruiksvriendelijker.
 
Code:
Sub Mail_workbook_Outlook_1()
'Working in 2000-2007
'This example send the last saved version of the Activeworkbook
Dim OutApp As Object
Dim OutMail As Object

If WorksheetFunction.CountBlank(Range("A1:A2")) <> 0 Then
    MsgBox "Vul verplichte velden in"
Else
Vervolg van je code

De tekst op de knop moet je nog wel even bewerken door erop te klikken en aan te passen. Nadien rechtsklik op de knop en selecteer Tekstbewerking afsluiten

Mvg

Rudi
 
Die knop moet ik toch via een usermodule invoegen?
Kan ik die dan koppelen aan de rest van het programma?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan