» Off-"Flitsservice" » Techniek   



 Pagina 10 van 11  [ 514 berichten ]
Dashcam Drenthe
Master
 Bericht 
Hmm oke. Misschien is een knop handiger die linkt naar het e-mail adres?

Pietert
Master
 Bericht 
Misschien...

ericj
Die hard
 Bericht 
Ik zou daar in ieder geval mee beginnen. Als dat werkt kun je altijd nog de knop proberen overbodig te maken. Hier een voorbeeld dat ik vond, die gebruikt niet de sendmail functie maar het Outlook OLE object.

https://www.rondebruin.nl/win/s1/outlook/bmail9.htm

https://www.rondebruin.nl/win/section1.htm

Dashcam Drenthe
Master
 Bericht 
Ik heb het nu zo dat ik een knop heb 'Mail aanvrager' en dat ik dan een standaard mailtje heb. Nu is mijn vraag alleen hoe ik dat zo kan maken dat die niet alleen naar 1 cel kijkt voor het e-mail adres maar dat ie per kolom kijkt, desnoods door even op de cel te gaan staan ofzo.

Heb nu dit in een testbestandje

Code:
Sub Mail_small_Text_Outlook()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String

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

    strbody = "Dit is een automatisch bericht" & vbNewLine & vbNewLine & _
              "De leverdatum van uw aanvraag is bekend en staat vermeld in de overzichtslijst" & vbNewLine


    On Error Resume Next
    With OutMail
        .To = Cells(1, 1)
        .CC = ""
        .BCC = ""
        .Subject = "Leverdatum aanvraag materieel"
        .Body = strbody
        'You can add a file like this
        '.Attachments.Add ("C:\test.txt")
        .Display   'or use .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub


Wil dus die cells(1,1) anders

Pietert
Master
 Bericht 
Een loopje definiëren die deze functie voor alle cells aanroept die je wil checken?

Deze fietst met een geneste while ook door kolommen, dus die zou je kunnen laten staan of er tussenuit slopen.
Code:
Sub iterateThroughAll()
    ScreenUpdating = False
    Dim wks As Worksheet
    Set wks = ActiveSheet

    Dim rowRange As Range
    Dim colRange As Range

    Dim LastCol As Long
    Dim LastRow As Long
    LastRow = wks.Cells(wks.Rows.Count, "A").End(xlUp).Row

    Set rowRange = wks.Range("A1:A" & LastRow)

    'Loop through each row
    For Each rrow In rowRange
        'Find Last column in current row
        LastCol = wks.Cells(rrow, wks.Columns.Count).End(xlToLeft).Column
        Set colRange = wks.Range(wks.Cells(rrow, 1), wks.Cells(rrow, LastCol))

        'Loop through all cells in row up to last col
        For Each cell In colRange
            'Do something to each cell
            Debug.Print (cell.Value)
        Next cell
    Next rrow
    ScreenUpdating = True
End Sub


DikkeDiesel
Master
 Bericht 
En ik zou wat Rover zegt een extra kolom "Datum Mail Verzonden" toevoegen waarin het script de datum van het moment van verzenden invult. Is handig om te weten welke mail wanneer verzonden is en voorkomt meermalen verzenden als je op dat veld test of het gevuld is.

Dashcam Drenthe
Master
 Bericht 
Hmm...Idd ingewikkeld allemaal :x

*gaat maar weer googlen* :[

Pietert
Master
 Bericht 
Nee, jij maakt het ingewikkeld. Je wil nu een compleet CRM-systeem in een Excel sheet gaan bouwen.

Dashcam Drenthe
Master
 Bericht 
Ja ik ga het maar anders doen denk ik ook :roflol:

Dashcam Drenthe
Master
 Bericht 
Pietert schreef:
Een loopje definiëren die deze functie voor alle cells aanroept die je wil checken?

Euhm.

Die code boven jou post, die werkt op cel niveau. En ik zou eigenlijk graag willen dat die de cellen in de macro automatisch aanpassen als ik een cel lager ga staan. Daarnaast ben ik aan het zoeken naar een als formule, zodat de macro knop alleen tevoorschijn komt als er in de cel wat ingevoerd is.

Dashcam Drenthe
Master
 Bericht 
Beetje ziets zeggggggg maaaaarrrrrrrrr, maar dan op een goede VBA manier :lol:
Code:
Sub Mail_small_Text_Outlook()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String

if cells (13, 9) = IsDate
If true 
Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    strbody = "Dit is een automatisch bericht" & vbNewLine & vbNewLine & _
              "De leverdatum van uw aanvraag is bekend en staat vermeld in de overzichtslijst" & vbNewLine & vbNewLine & _Cells(13, 9) & vbNewLine


    On Error Resume Next
    With OutMail
        .To = Cells(9, 4)
        .CC = ""
        .BCC = ""
        .Subject = "Leverdatum aanvraag materieel"
        .Body = strbody
        'You can add a file like this
        '.Attachments.Add ("C:\test.txt")
        .Display   'or use .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub


Iets in die richting als er gesnapt wordt wat ik bedoel :x

DikkeDiesel
Master
 Bericht 
Deze code doet het alleen voor rij 9. Als je hem de hele sheet wilt laten doorlopen moet je er een
Code:
Do While Cells(r,4)<>""
en
Code:
Loop
omheen bouwen, en een If om een mail niet tweemaal te versturen.

Pietert
Master
 Bericht 
Valt dit al onder pair programming?
:)

En we willen allemaal credit in je stageverslag!

Dashcam Drenthe
Master
 Bericht 
Pietert schreef:
stageverslag!

credit excel overzicht 'dikke diesel' ..hih wie?!? :lol:

DikkeDiesel
Master
 Bericht 
Zet er maar in: D. Diesel (geen kleinzoon van Rudolf) :lol: :lol: :lol:

Dashcam Drenthe
Master
 Bericht 
Pietert schreef:
Valt dit al onder pair programming?

Ik heb geen idee wat dat betekent, maar ik krijg het in ieder geval niet voor elkaar :[

Pietert
Master
 Bericht 
Logisch, je bent ook geen coder.

Dashcam Drenthe
Master
 Bericht 
Nee ik ga maar een andere manier bedenken :lol:

Pietert
Master
 Bericht 
Ik bedoelde het niet lullig. Je begint je nu onderhand op terrein te geven waarin een VMBO-t afstudeerder informatica zou kunnen gaan zitten (ok, nog wel wat lomper, maar toch, het idee..) het is logisch dat je er nu niet zomaar meer uitkomt. Het is gewoon allemaal niet zo vanzelfsprekend.

Dashcam Drenthe
Master
 Bericht 
Nee daarom, en ik ben al een enorme ster met computers enzo *kuch* dus ik moet het maar even op een andere manier doen, misschien wil ik het wel allemaal veel te mooi maken :[

Pietert
Master
 Bericht 
Of misschien pleiten dat je een HBO-stagiair-informatica ritselt? :)

Dashcam Drenthe
Master
 Bericht 
Mja, het is maar een overzichtslijstje, aan de ene kant heel belangrijk en aan de andere kant het niet waard om hele maanden eraan zitten te werken :x
Vlootbeheerder kan bij het invoeren van de leverdatum ook wel even op een knopje drukken :lol:

Dus eens kijken of je met een formule als de cel gevuld is, een vba knopje tevoorschijn kan laten komen, al ben ik beng dat dat dan weer vba voor nodig is :x

Dashcam Drenthe
Master
 Bericht 
*kijkt even heeeeel lief* O:)

Een vba die enkel verwijst naar een e-mail adres in een bepaalde cel, maar waar niet het vba afhankelijk is van 1 cel. Dan zal ik verder niets meer over vba vragen :oops:

Pietert
Master
 Bericht 
Kan je beter een mailto:persoon@adres.ext link maken van dat adres. Doet Excel dat al niet automatisch?

Dashcam Drenthe
Master
 Bericht 
Pietert schreef:
Kan je beter een mailto:persoon@adres.ext link maken van dat adres. Doet Excel dat al niet automatisch?

Maar dan heb je 1 e-mail adres toch?. Staan straks zo 30 onder elkaar.

Dashcam Drenthe
Master
 Bericht 
=ALS(D88="Toyota";VERT.ZOEKEN(I88;Draaiuren!A:N;13;ONWAAR);"")

D88 = Toyota
I88 = 19137
Draaiuren cel B6 is 19137
De retourwaarde in cel M6 is 126

Waarom krijg ik een #N/B :huh:

Scaniafan
Master
 Bericht 
I88 text, B6 number of andersom?

Dashcam Drenthe
Master
 Bericht 
Staan beide op tekst. Krijg bij de 19137 in draaiuren zelfs nog een uitroepteken dat het opgeslagen staat als tekst en niet als getal.

Scaniafan
Master
 Bericht 
En die waarschuwing krijg je bij de andere niet? Dan klopt die niet O:)

Dashcam Drenthe
Master
 Bericht 
Scaniafan schreef:
En die waarschuwing krijg je bij de andere niet? Dan klopt die niet O:)

ja bij die andere ook :[
Las dat vert. zoeken alleen kan zoeken in kolom A dus dat ook aangepast, nog steeds fout.
Bij formule evalueren gaat het ook fout bij het stuk 'Draaiuren!A:L;12;ONWAAR);"")'

Scaniafan
Master
 Bericht 
Las dat vert. zoeken alleen kan zoeken in kolom A dus dat ook aangepast, nog steeds fout.


Kolom A of de eerste kolom van je range?

Dashcam Drenthe
Master
 Bericht 
Kolom A in de draaiuren tab

DikkeDiesel
Master
 Bericht 
Verticaal zoeken gebruikt altijd de eerste kolom van de range, hoeft niet A te zijn

Dashcam Drenthe
Master
 Bericht 
Waarom doet ie het dan niet :nah:

Formule: =ALS(D88="Toyota";VERT.ZOEKEN(I88;Draaiuren!B:N;12;ONWAAR);"")

Screenshots: (verwijder ze over een uur weer ivm informatie)
Afbeelding
Afbeelding

Pietert
Master
 Bericht 
Draaiuren zijn in de 2e sheet iig gewoon cijfers. Geen string.

Scaniafan
Master
 Bericht 
Ik verwacht toch echt een verschil in formatting en text tussen kolom B in je vlookup array en kolom I op je eerste sheet.

Pietert schreef:
Draaiuren zijn in de 2e sheet iig gewoon cijfers. Geen string.


Dat maakt niet uit, want dat is de output

Dashcam Drenthe
Master
 Bericht 
En dat wil zeggen? :oops:

Scaniafan
Master
 Bericht 
Dat je vlookup value en "target"value niet overeen komen. Spatie, één wel text ander geen text etc.

Dashcam Drenthe
Master
 Bericht 
Hmm...en valt dat met een instelling te veranderen? *zoekt zelf ook al*

Scaniafan
Master
 Bericht 
*zoekt zelf ook al*


*Laat lekker ff zelf zoeken* O:)

Ok, hint. Text to columns.

Dashcam Drenthe
Master
 Bericht 
Scaniafan schreef:
Text to columns.

Hé, daar was ik net al. En toen stopte excel er opeens mee :lol:

DikkeDiesel
Master
 Bericht 
Vloot nmr is zo te zien text, dan moet SN nummer ook text zijn.

Misschien VERT.ZOEKEN(TEXT(I88);Draaiuren!B:N;12;ONWAAR) ?

Scaniafan
Master
 Bericht 
Ga dat jong een beetje workarounds uitleggen. Data-integriteit FTW (f)

Dashcam Drenthe
Master
 Bericht 
Bij tekst naar kolommen werkt het wel. Echter is dat een extra handeling die niet gewenst is. Valt kolom B ook gewoon standaard in te stellen als getallennotatie en dat dat ook blijft staan als er iets nieuws in wordt geplakt?

Scaniafan
Master
 Bericht 
Als je copy > paste values gebruikt wel, tenzij de value een text indicatie bevat. Spatie, ', etc.

Maareh

Scaniafan schreef:
I88 text, B6 number of andersom?


2 uur bezig geweest met dat oplossen? Hoe lang loopt je stage nog? :lol:

Dashcam Drenthe
Master
 Bericht 
Scaniafan schreef:
2 uur bezig geweest met dat oplossen? Hoe lang loopt je stage nog?

:duh:
Ben tussendoor wat dingen aan het omgooien hoor dus het valt mee :[
Nog 1.5 maand :[

Scaniafan
Master
 Bericht 
Zonde van de koffie.

Dashcam Drenthe
Master
 Bericht 
:duh:

De tekst naar kolommen blijft niet staan bij nieuwe copy paste. De formule met tekst krijg ik nog niet werkend :duh:

Scaniafan
Master
 Bericht 
Dan moet je gaan hameren op data-integriteit 8)

Dashcam Drenthe
Master
 Bericht 
Die gegevens worden uit een systeem van Toyota gehaald en in Excel gedumpt. Daar kunnen ze niet veel aan doen :[

 Pagina 10 van 11 [ 514 berichten ] 


Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers en 2 gasten


Je mag geen nieuwe onderwerpen in dit forum plaatsen
Je mag niet antwoorden op een onderwerp in dit forum
Je mag je berichten in dit forum niet wijzigen
Je mag je berichten niet uit dit forum verwijderen
Je mag geen bijlagen toevoegen in dit forum

Zoek…