Extra mail adres toewijzen

Status
Niet open voor verdere reacties.

kuilman

Gebruiker
Lid geworden
24 nov 2009
Berichten
78
Ik gebruik deze code van VBA ( begin pas net met VBA en deze komt van roel zijn site)
nu wil ik graag dat als mensen hun email adress in cel C19 invoeren dat het formulier ook naar dat e-mail adres word gestuurd.
Ik heb al diverse dingen geprobeerd maar krijg het niet voor elkaar.
zie hieronder de code

Code:
Option Explicit

Sub Mail_Every_Worksheet()
'Working in 97-2007
    Dim sh As Worksheet
    Dim wb As Workbook
    Dim FileExtStr As String
    Dim FileFormatNum As Long
    Dim TempFilePath As String
    Dim TempFileName As String

    TempFilePath = Environ$("temp") & "\"

    If Val(Application.Version) < 12 Then
        'You use Excel 97-2003
        FileExtStr = ".xls": FileFormatNum = -4143
    Else
        'You use Excel 2007
        FileExtStr = ".xlsm": FileFormatNum = 52
    End If

    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With

    For Each sh In ThisWorkbook.Worksheets
        If sh.Range("A1").Value Like "?*@?*.?*" Then   [COLOR="Red"]<--Als ik daar C19 inzet werkt dit niet.[/COLOR]

            sh.Copy
            Set wb = ActiveWorkbook

            TempFileName = "Sheet " & sh.Name & " of " _
                         & ThisWorkbook.Name & " " & Format(Now, "dd-mmm-yy h-mm-ss")

            With wb
                .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
                On Error Resume Next
                .SendMail sh.Range("A1").Value, _ [COLOR="red"]<-- hier zou ik dat ook moeten anapassen ook C19 ingezet maar werkt niet.[/COLOR]
                          "Bloemen,geschenken en dienstjubilea"
                On Error GoTo 0
                .Close SaveChanges:=False
            End With

            Kill TempFilePath & TempFileName & FileExtStr

        End If
    Next sh

    With Application
        .ScreenUpdating = True
        .EnableEvents = True
    End With
End Sub

Wie kan mij hiermee helpen ik krijg het niet voor elkaar
 
Laatst bewerkt:
Code:
Sub werkbladmeel()
  Application.ScreenUpdating = False
  Application.DisplayAlerts=False

  c0 = Split(ThisWorkbook.Name, ".")(UBound(Split(ThisWorkbook.Name, ".")))
  c1 = ThisWorkbook.FileFormat

  For Each sh In ThisWorkbook.sheets
    If sh.Range("C19").Value Like "?*@?*.?*" Then
      sh.Copy
      With Activeworkbook
        .SaveAs Environ("temp") & "\tijdelijk." & c0,c1 
        .SendMail sheets(1).Range("C19"),"Bloemen,geschenken en dienstjubilea"
        .Close False
      End With
    End If
  Next
  Application.DisplayAlerts=True
  Application.ScreenUpdating = True
End Sub
 
Laatst bewerkt:
Hallo SNB,

Dankje voor de snelle reactie maar als ik die code gebruikt pakt hij alleen het mailadress dat in cel C19 staat.
Maar hij moet hem ook naar de mail in cel A1 sturen.
( De reden omdat dat een aanvraag formulier is voor een jubilea)
in cel A1 staat het vaste mailadress waar de aanvraag heen moet, en in cel C19 kan de aanvrager zijn eigen mail neerzetten zodat die een kopie in zijn of haar mailbox krijgt.

Hierbij nog even mijn voorbeeld bestand rij 1 hbe ik verborgen en het blad is beveiligd zonder WW
Bekijk bijlage 78613
 
Laatst bewerkt:
Dan geldt: gebruik geen code die je niet begrijpt.
Gebruik in ieder geval wél de hulpfunktie van de VBEditor. Kijk eens bij sendmail.
 
ik moet neem ik aan ergens beginnen om een code te gebruiken.
Goed ik kan niet de hele code ontcijferen maar dat leer je door te doen.
nu heb ik al diverse dingen geprobeerd maar krijg dit niet voor elkaar.
Daarom vraag ik om hulp, en dan is het wel mooi dat je voor mij een andere VBA code hebt gemaakt maar dan ben ik er nog niet omdat ik een adres extra wou toevoegen.
en jij hebt alleen cel A1 gewisseld met cel C19 en daar vroeg ik niet om ( was ook niet geheel duidelijk in mijn eerste aanvraag ) dus daar wil ik snb wel voor bedanken

Is er iemand die mij hier wel bij kan helpen?
 
Hoi SNB ik heb dat doorgelezen en heb er zeker dingen van opgestoken.
maar nu dacht ik dus om cel A1 en C19 een bereik te geven en dan binnen VBA als range het bereik te nemen maar dit werkt dus niet.
hij stuurt dan alleen de mail naar het adres in C19.
 
suggestie

sendmail sheets(1).Range("A1:C19"),"..."

Had je in de VBEditor hulp al bij de methode sendmail gekeken ?
 
hey snb ja daar heb ik geken maar daar kon ik niet in terug vinden hoe ik een 2e cel er aan kon koppelen. ik ga het direct proberen je hoort nog van mij
 
Laatst bewerkt:
hey snb,

Wat jij doorgeeft klopt niet.
Als ik de code zo aanpas verstuurt hij geen mail ook niet meer naar de mail in cel A1.

Dus op die manier wil die toch niet helemaal werken.
Ik zal door blijven puzelen
 
Dit werkt wel:
.SendMail Split(Sheets(1).Range("A1") & "|" & Sheets(1).Range("C19"), "|"), "........."
 
hoi snb,

Heel erg bedankt voor jou hulp.
Ik begin VBA toch wel heel interesant te vinden.
ben me er nu ook best wel in aan het verdiepen je kan er zoveel mee wat ik allemaal niet wist.

Vriendelijk bedankt voor je hulp alles werkt nu :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan