Jeg er på udkig efter en løsning, hvor jeg kan sende et enkelt ark af en større excel mappe, ved enten at køre en macro eller trykke på en knap. Jeg har lavet et VB script, som ser sådan her ud
Nu er jeg ikke vba ekspert, men når der står 'ThisWorkbook', så er det vel hele regnearket man sender. Kan man ikke lave noget med 'ActiveSheet' der vil komme til at fungere?
Jeg synes jeg har leget med ActiveSheet, men den har ikke mail parametre.. Så jeg har ledt lidt efter en kommando i stil med ThisWorkbook, der bare tager og sender arket, men har ikke kunnet finde det, og jeg er absolut heller ikke VB haj : )
Jeg mener - men jeg er ikke sikker - kun at du kan sende hele workbooks. En mulighed kunnevære at lade din kode slette de ark, du ikke vil sende, og så sende det sidste.
Hvis kun ThisWorkbook virker til mail, så er det nok jkrons forslag du skal følge. Hvis du ikke vil slette de andre ark, kunne du også kopiere det ark, du vil sende over i et nyt regneark og så sende det. Men jeg kan godt se det bliver lidt mere besværligt.
Problemet er lidt at det ville være praktisk at sende det, som hvis man trykker på send ark som mail, altså så den smider det over i en mail "åbnet" istedet for et vedhæfte det som en fil. Funktionaliteten må jo ligge der, fordi det er det standard knappen gør.
her er en måde at send det aktive ark på og kun det. det løser ikke problemet at sende det "åbnet"
Sub Send_email()
If Application.MailSystem <> xlNoMailSystem Then ActiveSheet.Copy With ActiveWorkbook .SendMail _ Recipients:=Array("xxx@xxx.dk", "yyy@yyyy.dk", "zzz@zzzz.dk"), _ Subject:="her skal subject stå" .Close SaveChanges:=False End With Application.MailLogoff Else MsgBox "Inget Microsoft postsystem er installeret.", vbInformation, "Postmeddelelse" End If
Så er jeg kommet lidt længere, men jeg mangler stadigt muligheden for at sende arket som sig selv i "bodyen" på mailen, istedet for som en vedhæftet fil.
jeg er bange for, at du er kommet så langt som du kan, uden et større kodeprojekt. Jeg har aldrig set det før, men vil ikke afvise at det kan lade sig gøre, at få selve regnearket over i mailen "åben". Det er dog muligt at smide data over i text eller html-format.
'Use a With...End With block to reference the MsoEnvelope object. With Application.ActiveDocument.MailEnvelope
'Add some introductory text before the body of the e-mail. '.Introduction = "Please read this and send me your comments."
'Return a Microsoft Outlook MailItem object that 'you can use to send the document. With .Item
'All of the mail item settigs are saved with the document. 'When you add a recipient to the Recipients collection 'or change other properties, these settings will persist. .Recipients.Add "adr@mail.dk" .Subject = "Here is the document."
'The body of this message will be 'the content of the active document. '.Send .Display End With End With End Sub
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.