werkt wel in windows 7 niet in windows 8

Status
Niet open voor verdere reacties.

samui

Verenigingslid
Lid geworden
26 mei 2012
Berichten
207
Beste,

Ik zit met onderstaand probleem.
Als ik deze macro onder windows 7 draai met excel 2007 werkt hij goed en verstuur ik direct tig keer een mailtje.
Ik vul mijn eigen mailadres in, in mijn excel file in de juiste kolom en cel. de locatie: F:\Documenten \naambestand.xlsm staat achter iedereen zijn naam en wordt als bijlage meegestuurd.
Als ik deze macro start onder windows 8 met excel 2007 komt de de rode regel iedere keer in beeld.
Kent windows 8 deze regel niet of zijn het instellingen die verkeerd staan. Ik ben al volop aan het zoeken naar verschillen maar zie geen instellingen die anders staan.
Outlook staat op beide computers als standaard email programma.


De macro komt van onze goede vriend Ron de Bruin zijn helpdesk site

PS: ik heb mijn tekst die ik in mijn mail gebruik aangepast naar de tekst "tekst" maar dat is voor de uitleg niet belangrijk.

'Met deze macro wordt het invulblad op locatie: F:\Documenten \Lentefeesten\Lentefeesten final\invulblad.xlsm
'verzonden naar de deelnemers die een mailadres hebben ingevuld
'Option Explicit
Sub Send_Files()
Dim OutApp As Object
Dim OutMail As Object
Dim sh As Worksheet
Dim cell As Range, FileCell As Range, rng As Range

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

Set sh = Sheets("Deelnemers")
Set OutApp = CreateObject("Outlook.Application")
For Each cell In sh.Columns("J").Cells.SpecialCells(xlCellTypeConstants)
'Hier zie je waar je bestand om te versturen staat: in kolom AE ofwel kolom nr: 31
Set rng = sh.Cells(cell.Row, 1).Range("AE1:AF1")
If cell.Value Like "?*@?*.?*" And _
Application.WorksheetFunction.CountA(rng) > 0 Then
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = cell.Value
.Subject = "TEKST"
.Body = "Beste " & cell.Offset(0, -5).Value & "," & vbNewLine & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & vbNewLine & _
"tekst" & vbNewLine & _
"tekst." & vbNewLine & _
"tekst." & vbNewLine & vbNewLine & _
"met vriendelijke groet," & vbNewLine & vbNewLine & _
"tekst"

For Each FileCell In rng.SpecialCells(xlCellTypeConstants)
If Trim(FileCell) <> "" Then
If Dir(FileCell.Value) <> "" Then
.Attachments.Add FileCell.Value
End If
End If
Next FileCell
.Send 'Or use Send bij direct verzenden of .Display bij eerst inzien van je te versturen bestand
End With
Set OutMail = Nothing
End If
Next cell

Set OutApp = Nothing
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
 
Dat zal niks met Windows 7 of Windows 8 te maken hebben.
Ik denk dat je in VBA van de Office installatie op Windows 8 de verwijzing naar de Microsoft Outlook Object Library nog niet aangevinkt hebt.
 
Hallo Edmoor,

Bedankt voor je snelle reactie, maar waar kan ik die na de installatie nu nog aanvinken?
Ik heb onder het tabblad ontwikkelaars net gekeken of er verschillen zijn tussen de laptop en mijn vaste computer maar die zie ik niet.
Wellicht dat ik op de verkeerde plek kijk.
Waar moet ik zoeken om dit aan te vinken?
Frank
 
Dat doe je in de VBA editor zelf.
Klik daar op Extra en dan Verwijzingen.
Zoek de regel op die ik zei en vink deze aan.
 
Ik heb deze inderdaad nu aangevinkt maar ik krijg nog steeds de melding die ik sinds het begin krijg en dat is deze:
ActiveX onderdeel kan geen object maken.
Mis ik zeker ook diverse ActiveX aanvinkingen?
Ik zie diverse dataobjects -/+ 2.1 t/m 6.1 library in deze lijst staan. Als ik ze allemaal selecteer krijg ik de melding:
De opgegeven naam is strijdig met een bestaand project, een bestaande module of een bestaand objectbibliotheek.
 
Hmmmm dat moet het dan denk ik wel zijn.
Op de laptop staan dezelfde punten aangevinkt als op de vaste computer en toch doet hij het niet.
Jouw verwijzing zal dan wel het probleem zijn.
Zal het eens goed doorlezen wat er staat.
In iedergeval nogmaals bedankt, Edmoor.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan