Waarde uit Excel via Outlook macro

Status
Niet open voor verdere reacties.

ChrisF

Gebruiker
Lid geworden
13 nov 2014
Berichten
8
Hallo iedereen,

Ik probeer via een Outlook macro een cell waarde van een geopende excel workbook te lezen.
Onderstaande code heb ik geprobeerd, maar die werkt niet, sourcewb blijft namelijk leeg, en geeft
dus een foutmelding.

Kan iemand mij hier bij helpen?


Code:
Function openExcel()

Dim xlApp As Object
Dim sourceWB As Workbook
Dim sourceWS As Worksheet
Dim project As String

Set xlApp = CreateObject("Excel.Application")

With xlApp
.Visible = True
.EnableEvents = True
End With

strfile = "Overzicht projecten 2014.xlsm"

Set sourceWB = Workbooks(strfile)
Set sourceWH = sourceWB.Worksheets("Projecten")
sourceWB.Activate
project = sourceWH.[a2].Value
MsgBox (project)
End Function
 
En de foutmelding is kennelijk weer niet belangrijk.
 
En op welke regel krijg je de foutmelding? En is het niet veel handiger om er een voorbeeldje bij te doen, zodat we kunnen testen of het inderdaad (wel of niet) werkt? En kun je de quoot in je vorige berichtje weghalen? het bericht van edmoor staat er namelijk pal boven, dus er is geen enkele reden om het bericht te quooten. Als je antwoord op een berichtje, gebruik dan het tekstvak <Snel reageren>.
 
Laatst bewerkt:
Hallo OctaFish,

De foutmelding krijfg ik in de regel "Set sourceWB = Workbooks(strfile)"
en het testen lijkt me niet zo moeilijk, even een sheet aanmaken en een waarde in [a2] zetten
en die proberen uit te lezen met de macro.

Chris.
 
Ik zou het zo doen, waarbij je eventueel nog wel een padnaam mee moet geven in plaats van alleen de naam van het document:
Code:
Dim xlApp As Object
Dim project As String

Set xlApp = CreateObject("Excel.Application")

xlApp.Workbooks.Open "Overzicht projecten 2014.xlsm"
project = xlApp.worksheets("Projecten").Range("A2").Value
xlApp.Quit
Set xlApp = Nothing
MsgBox (project)

N.B:
Met dit soort opmerkingen maak je geen vrienden:
"en het testen lijkt me niet zo moeilijk, even een sheet aanmaken en een waarde in [a2] zetten"
 
Laatst bewerkt:
Bedankt edmoor,

Het werkt, alleen moest ik xlApp.Quit er uithalen omdat die probeerde mijn sheet te sluiten.
want de workbook is al open en moet ook open blijven.


Chris.
 
Dat mag uiteraard :)
 
Mij lijkt dit voldoende:


Code:
Sub M_snb()
  project=GetObject("G:\OF\Overzicht projecten 2014.xlsm").sheets("Projecten").cells(2,1).value
End sub

NB. Pas nog wel de padnaam aan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan