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

e-mail versturen

Status
Niet open voor verdere reacties.

ronnie123

Gebruiker
Lid geworden
21 nov 2007
Berichten
595
beste forumleden
ik heb hier een code gevonden om een e-mail te versturen die ik graag wil aanpassen maar lukt me niet
Code:
Private Sub CommandButton4_Click()
    Dim olApp As Outlook.Application
    Dim olMail As MailItem
    Dim CurrFile As String

    Set olApp = New Outlook.Application
    Set olMail = olApp.CreateItem(olMailItem)
    ActiveWorkbook.Save
    CurrFile = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name

    With olMail
        .To = ActiveSheet.Range("Q1")
        .Subject = "stand"
        .Body = ActiveSheet.Range("A3").Text & vbCrLf & ActiveSheet.Range("U10").Text
        .Display
        .Send
    End With

    Set olMail = Nothing
    Set olApp = Nothing
End Sub


Code:
.Body = ActiveSheet.Range("A3").Text & vbCrLf & ActiveSheet.Range("U10").Text
ik wil graag ("A3") veranderen in ("A3 P153") maar dat lukt me niet.

en ik had nog een vraag over het versturen, dit doet hij pas als ik outlook open.
hoop dat iemand me verder wil helpen

groetjes ronnie
 
ronnie123,

Probeer het zo eens

Code:
A3:P153
 
en ik had nog een vraag over het versturen, dit doet hij pas als ik outlook open.
hoop dat iemand me verder wil helpen

groetjes ronnie


ronnie,

Dat isinderdaad waar. Outlook moet openstaan om je mail te verturen.
Maar die heb je toch altijd open staan?

Wim
 
hallo wim en wim
bedankt voor de snelle reactie's
met : had ik geprobeerd maar kreeg een foutmelding
fout 1004 tijdens uitvoering
door de toepassing of door object gedefinieerde fout

en ik zal zorgen dat outlook open staat heb msn altijd open

hoop dat jullie me verder kunnen helpen
groejes ronnie
 
Ronnie,

Probeer deze code ook eens.
Code:
Sub CommandButton4_Click()
    Dim olApp As Outlook.Application
    Dim olMail As MailItem
    Dim CurrFile As String

    Set olApp = New Outlook.Application
    Set olMail = olApp.CreateItem(olMailItem)
    ActiveWorkbook.Save
    CurrFile = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
    opbouw_Body
    With olMail
        .To = ActiveSheet.Range("Q1")
        .Subject = "stand"
        .Body = opbouw_Body & vbCrLf & ActiveSheet.Range("U10").Text
        .Display
        .Send
    End With

    Set olMail = Nothing
    Set olApp = Nothing
End Sub
Function opbouw_Body()
    Dim tmpBody As String
    tmpBody = ""
    For x = 3 To 153
        For y = 1 To 16
            tmpBody = tmpBody & ActiveSheet.Cells(x, y) & vbTab
        Next y
        tmpBody = tmpBody & vbCrLf
    Next x
    opbouw_Body = tmpBody
End Function

Succes

Wim
 
hallo wim dit ziet er perfect uit!!
maar mag ik je nog iets vragen?
hij verstuurd ook de verborgen kolommen
is hier nog iets aan te doen
groetjes ronnie

ps. ron daar ben ik ook mee aan het stoeien geweest maar heb teweinig ervaring om dat goed tekrijgen wil me er wel in verdiepen maar dat zal veel tijd voor me zijn.
 
hallo wim dit ziet er perfect uit!!
maar mag ik je nog iets vragen?
hij verstuurd ook de verborgen kolommen
is hier nog iets aan te doen
groetjes ronnie

ps. ron daar ben ik ook mee aan het stoeien geweest maar heb teweinig ervaring om dat goed tekrijgen wil me er wel in verdiepen maar dat zal veel tijd voor me zijn.

Ronnie,

ja daar is wat aan te doen.
Je kan in VBA afvragen of een kolom verborgen is en dan kan je deze overslaan.
Ik weet alleen zogauw niet wat je daar voor moet afvragen.
Ga wel even zoeken maar misschien weet iemand anders dit en kan het aanpassen in mijn oplossing in de Function.

Wim
 
Ronnie,

Simpeler dan ik dacht
Code:
Function opbouw_Body()
    Dim tmpBody As String
    tmpBody = ""
    For x = 3 To 153
        For y = 1 To 16
    [COLOR="Red"]        If ActiveSheet.Columns(y).Hidden = False Then[/COLOR]
                tmpBody = tmpBody & ActiveSheet.Cells(x, y) & vbTab
 [COLOR="red"]           End If[/COLOR]        
        Next y
        tmpBody = tmpBody & vbCrLf
    Next x
    opbouw_Body = tmpBody
End Function
 
:thumb: wim het is gelukt
bedankt hiervoor
kan weer verder dank zij jou en dit forum ben ik als leek toch aardig in de goede richting gekomen met wat ik wil.
groetjes ronnie
 
beste forumleden
wou nog even terug komen op mijn vraag omdat de ontvanger een mail krijgt die de tabel niet goed uitlijnd, gegevens staan niet goed onder elkaar
hoe verander ik dit?
grt ronnie
 
beste forumleden
wou nog even terug komen op mijn vraag omdat de ontvanger een mail krijgt die de tabel niet goed uitlijnd, gegevens staan niet goed onder elkaar
hoe verander ik dit?
grt ronnie

Ronnie,

Denk ik afhankelijk van het lettertype dat je gebruik in de mail
Standaard kan je dat instellen in Outlook

Succes
Wim
 
Verwijder al die overbodige variabelen:

Code:
Private Sub CommandButton4_Click()
  With createobject("Outlook.Application").createitem(0)
    .To = Thisworkbook.Sheets(1).Range("Q1")
    .Subject = "stand"
    .Body = Thisworkbook.Sheets(1).Range("A3").Text & vbCrLf & Thisworkbook.sheets(1).range("U10").Text
    .Send
  End With
End Sub
 
hallo snb
bedankt voor je reactie
heb nog een andere vraag over e-mails
kwam deze code tegen van jou is die eenvoudig aantepassen zodat het verstuurd wortdt naar de persoon in a1
Code:
Sub verzend()
  ActiveSheet.Copy
  ActiveWorkbook.SendMail "ga@gmail.com", "proef"
  Activeworkbook.close false
End Sub
grt ronnie
 
Als in A1 een emailadres staat:

Code:
Sub verzend()
  ActiveSheet.Copy
  With ActiveWorkbook
     .SendMail .sheets(1).range("A1"), "proef"
     .close false
  End with
End Sub
 
hallo snb
bedankt voor de reactie heb een hoop geleerd over mail verzenden
grt ronnie
 
hallo snb

nog 1 vraagje?
en als je nu van het te verzende blad een bepaalde bereik wil
bv A1:H20
hoe zet je dat er tussen
grt ronnie
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan