Convert excel vba to diadem script

I have a working excel spreadsheet that can interpolate z given and x,y using a matrix lookup table.  I am attaching the excel file.  I would like to import this functionality into Diadem.  Basically, I collect Engine Speed and System Pressure, and I would like to know what the resulting Compressor Output (l/min) equals.
This data is being collected from a vehicle at 100Hz sample rate, and this would greatly help with the data analysis.
The excel user defined functions are from www.tushar-mehta.com
Any assistance would be greatly appreciated.
Solved!
Go to Solution.
Attachments:
Compressor Map.xls ‏55 KB

Brad,
Thank you for your time and assistance.  You are correct that I don't want to just do one at a time.  My ultimate goal is to create a new channel with the returned z values and then I will be summing up the values to give a total compressor output in liters for the entire run.
The compressor is only running when "Governor" = 0
The "Compressor_Speed" = "Drv_Ratio" x "Eng_Speed" when the above condition is true.
Using the new values: "Compressor_Speed" as X and "System_Pressure" as Y create a new channel "Compressor_Output" using a lookup table to interpolate the values.
So...  Given:
Recorded Values
Generated Values
Calculated Values
Lookup Table Values
Row
Governor
Eng_Speed
System_Pressure
Drv_Ratio
Compressor Speed
Compressor_Output
22880
0
1255
9.213
1.08
1355.4
Interpolated value
22881
0
1255
9.213
1.08
1355.4
Interpolated value
22882
0
1255
9.213
1.08
1355.4
Interpolated value
22883
0
1255
9.213
1.08
1355.4
Interpolated value
22884
0
1254
9.213
1.08
1354.32
Interpolated value
22885
0
1254
9.213
1.08
1354.32
Interpolated value
22886
1
1254
9.216
1.08
0
0
22887
1
1254
9.216
1.08
0
0
22888
1
1254
9.216
1.08
0
0
22889
1
1254
9.216
1.08
0
0
 Then after running this on the entire data set I will be summing "Compressor_Output" to figure out the total ammount of air processed by the compressor.

Similar Messages

  • Excel VBA + SAP Scripting / How can I send an instruction to a background window without bringing it up?

    Hello guys,
    I need to send keys to a window in the background, but I don't want it to pop up when I do it as it may cause some errors if I'm typing something at that moment. Is this possible?
    The script I'm working on converts a spool to a pdf, but when the save as window comes up, the script stops recording because that is not a SAP screen, but a windows screen.
    I was actually able to make it work by ending the script right before executing the transaction, then I used AppActivate and SendKeys to execute the transaction by pressing F8 and saving the file by pressing enter, but I still have these windows popping up while the macro is running, so, is it possible to have the SendKeys point to a specific application without it bringing it to the foreground?
    Also, please note that I am new to programming, so I'm not familiar with all the functions.
    Thanks in advance.

    Hello Jahir.
    I had several similar request in past.
    One requirement was mass convertion of PM orders printout from spool to PDF.
    I found a solution where a small ABAP-Report (implemented in coding-area of an SQ02 infoset) Transfer spool data from my SAP user as PDF to a temp Folder on my local HDD.
    Then I convert this PDF-files with an small application (pdf2txt.exe) to text-files. Where a small Excel VBA code got an specific text as identifier (PM order number).
    So I have pdf-files with spoolnumber-naming and dedicated PM order number. So a small VBA code is renaming my files for better identification by enduser.
    Another method was to write an small VBA macro which is able to identify Save-As dialogbox and fillin a specific filename and press 'Save' by using ESER32-API methods and functions.
    As you are new with programming I guess both methods are a Little bit to complex for you.
    LEt me know when you Need more Information for one of above used methods by me.
    MAy you can give some more Details in which Transaction you will Trigger the spools.
    Br, Holger

  • Error in Excel VBA script while using sharepoint web service

    Hi Can you please help me out  in this ?
    nain1987

    Hi Nain,
    According to your description, my understanding is that the error occurred in the Excel VBA scripts which was used to update SharePoint list.
    I recommend to check if the URL of the web service is in the right scope. If the list is in a subsite, the URL should be: http://servername/site/ _vti_bin/Lists.asmx.
    To update SharePoint list using Excel VBA script, you can refer to the link below:
    http://sharepoint.stackexchange.com/questions/34433/update-sharepoint-list-using-excel
    Best regards.
    Thanks
    Victoria Xia
    TechNet Community Support

  • How can I call a variable from VBA in Diadem report?

    Hello,
    I have a script in Diadem, script that I can control from a VBA application ( from Excell), and I want to send from Excell some details to the report.
    I want in the report, the  Local Test Order field to by the LocalTO from the VBA (Excell), the DVM Test Order fiel to be the DVMTO from Excell, and ..... al the fields from the excell to be in the report.
    And in the Diadem script the filename of the export .pdf file to be the filename from the Excell.
    Attached I put the script from Diadem and the VBA application.
    Thank you for your time.
    Attachments:
    Diadem.zip ‏28 KB

    Hello Marse!
    Sorry that I was not clear enough and add the hwo-to via OLE
    For way 1. you have to add this lines to your Excel VBA code:
    loadscript = IDIACommand.TextVarSet("T1","Value of T1")
    For way 2. it is:
    loadscript = IDIACommand.CmdExecuteSync("GlobalDim('MyGlobalVar'")
    loadscript = IDIACommand.VariantVarSet("MyGlobalVar","Value of MyGlobalVar")
    Inserted before your line
    loadscript = IDIACommand.CmdExecuteSync("scriptstart('C:\BForce\LIBR\BForce2.VBS')")
    Hope it is clear now! Otherwise feel free to ask
    Matthias
    Message Edited by Twigeater on 10-10-2008 09:43 AM
    Matthias Alleweldt
    Project Engineer / Projektingenieur
    Twigeater?  

  • Convert Excel to XML file

    Hi Guys,
    I need to generate the XML from Excel file. The XML file will have the definition like this:
    <people_list>
    <name>Fred Bloggs</name>
    <birthdate>27/11/2008</birthdate>
    <gender>Male</gender>
    </people_list>
    The Excel file will look like this:
    A B C
    1 Fred Bloggs 10/21/2008 Male
    2 ABC 12/23/2008 Female
    3 XYZ 07/16/2008 Male
    All the values in name,birthdaye,gender will come from the Excel file. I am having 100 rows in the Excel file with the data and I want to parse this excel file and create the XML file with the above template.
    Any ideas how to do this?
    Thanks,
    Mahesh

    Hi Mahesh,
    there are tons of ways to do what you need. It all depends on how your workflow is organized and how complicated it may become.
    Alternative 1:
    Export your Excel file as a cvs and convert cvs to XML (which shouldn't be so hard).
    Pro: Relative easy transformation.
    Con: Every time you want to convert the Excel file to XML you first needs to export it out of Excel by a manual step.
    Alternative 2:
    Save you Excel file as XML (e. g. the new *.xslx documents) and transform it as you like.
    Pro: Very clean way to do this. You can access the single source Excel file directly from Java. No further steps needed.
    Con: It's very very hard to program because the Excel xml structure is ridiculously complex.
    Alternative 3:
    You can create a little Excel VBA Script which generates the XML File.
    Pro: Easy programing.
    Con: Needs some experience in Visual Basic 6 programming.
    Alternative 4:
    Use http://jexcelapi.sourceforge.net/ or any other Excel-API to Access the Excel application out of Java.
    Pro: Clean way to do it. You need no further manual actions to prepare something. (maybe the most flexible and at the same time easyest way)
    Con: Additional license.
    Best Wishes
    esprimo

  • Can I convert my VBA project to some sort of batch submitted executable

    Thanks to the help from you all, I have written VBA macros that open huge word documents and pluck out specific information and put it into Excel.  The files I've received have grown in size from 1500 to 3500 pages.  I'm currently running the VBA
    macros by opening the document in word and then clicking "View....Macros...mymacro....Run.  The macro then runs for any where from 10 minutes to 2 hours.
    Is there a way I can convert my VBA project into some sort of executable so that I can "submit" the word file to the executable? Sometimes I run this on a term server.  I'd like to start the job, log off the term server, and then later
    check for the resulting excel file.
    Is there a way to queue up a list of input files for this?

    Hi Denis Backer,
    >>Can I convert my VBA project to some sort of batch submitted executable<<
    Yes, it is possible. We can write an application to automate open the Word documents and run the macro using
    Application.Run. Also we can convert all the VBA project with mange code, however the Office automation is not supported on the server enviroment.
    Microsoft does not currently recommend, and does not support, Automation of
    Microsoft Office applications from any unattended, non-interactive client
    application or component (including ASP, ASP.NET, DCOM, and NT Services),
    because Office may exhibit unstable behavior and/or deadlock when Office is run
    in this environment.
    You can get  more detail about it from link below:
    Considerations for server-side Automation of Office Print Print Email Email
    And here are two helpful links about Office automtaion using C# for your reference:
    C# app automates Word (CSAutomateWord)
    How to automate Microsoft Excel from Microsoft Visual C#.NET
    Regards & Fei
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.
    That is a really curious disclaimer considering the number of options for automation Microsoft itself integrates into its products.

  • Excel VBA to JS: How does one pass rectangle coordinates to a JS function.

    I have an Excel VBA sub that calls a folder level JS function and I'm trying to pass a set of rectangle coordinates.
    This is the VBA code:
    Sub BarcodeDoc_PDF417(pdfFileName As String)
        Dim AVDoc As Acrobat.CAcroAVDoc
        Dim PDDoc As Acrobat.CAcroPDDoc
        Dim myApp As Acrobat.CAcroApp
        Dim jso As Object
        Dim bcTmpFile As String
            bcTmpFile = "C:\Temp\bcTmpFile.pdf"
            Set myApp = CreateObject("AcroExch.App")
            Set AVDoc = CreateObject("AcroExch.AVDoc")
                If AVDoc.Open(pdfFileName, "") Then
                    Set PDDoc = AVDoc.GetPDDoc
                    Set jso = PDDoc.GetJSObject
                        jso.myAdd417Barcode 'This is where the coordinates get passed.
                        PDFSave PDDoc, bcTmpFile
                    myApp.CloseAllDocs
                    myApp.Exit
                    Set AVDoc = Nothing
                    Set jso = Nothing
                    Set PDDoc = Nothing
                    Set myApp = Nothing
                Else
                    MsgBox "Sub: BarcodeDoc_PDF417. Document not found:" & vbCrLf & vbCrLf & pdfFileName
                End If
    End Sub
    This is the folder level JS script:
    function myAdd417Barcode(myCoords)
    //The line below is just for testing. Will come out once I can pass the coords in from my VBA sub.
    //var myCoords = [324, 756, 540, 720];
    InsertPDF417Barcode(this, myCoords);
    I've tried to pass the coords as a string and an array, both to no avail. Any ideas?
    Thanks.

    I tried typing the array as a variant (in the VBA code), but the JS script didn't like that either.
    I then changed the JS script to this:
    function myAdd417Barcode(n1, n2, n3, n4)
      var bcCoords = [n1, n2, n3, n4];
      InsertPDF417Barcode(this, bcCoords);
    and passed it 4 integers thinking it would accept them in a way that I could then define the rectangle coordinates as shown above. It didn't work, and the error I get is that myCoords (in the script below) "isn't defined".
    var InsertPDF417Barcode = app.trustedFunction( function(doc, mycoords)
      app.beginPriv();
      var bcIconFileName = "/C/Temp/bcTmpImage.pdf";
      //var bcCoords = [324, 756, 540, 720];
      var t = doc.addField("bcFormID", "button", 0, myCoords);
      t.display = display.visible;
      t.buttonPosition = position.iconOnly;
      t.buttonScaleHow = scaleHow.proportional;
      t.buttonScaleWhen = scaleWhen.always;
      t.buttonFitBounds = true;
      t.setButtonIcon
      var x = doc.importIcon("myIcon", bcIconFileName, 0);
      var f = doc.getField("bcFormID");
      var i = doc.getIcon("myIcon")
      var y = f.buttonSetIcon(i);
      app.endPriv();
    Any suggestions will be appreciated.
    Thanks!

  • Using Excel VBA to Print to PDF File?

    Hi, All !!
    I have an Excel VBA application that creates Excel reports.  These need to be sent external to our company in PDF format.  I've downloaded the Acrobat SDK and have found the VB sample for AdobePDFSilent.  Unfortunately, it appears that this is written for VB or VB.Net as I don't have any of the data types available that are created in the code.  However, from another forum, I've gotten some VB code that appears to do many of the processes included in the SDK sample.
    The code below doesn't give me any errors, but no PDF file is created.
    My VBA code
    Declare Function RegOpenKeyA Lib "advapi32.dll" ( _
        ByVal Key As Long, _
        ByVal SubKey As String, _
        NewKey As Long) As Long
    Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" ( _
        ByVal hKey As Long, _
        ByVal lpValueName As String, _
        ByVal Reserved As Long, _
        ByVal dwType As Long, _
        lpData As Any, _
        ByVal cbData As Long) As Long
    Declare Function RegCloseKey Lib "advapi32.dll" ( _
        ByVal hKey As Long) As Long
    Sub TestPrintPDF()
        Dim strDefaultPrinter As String
        Dim strOutFile As String
        Dim lngRegResult As Long
        Dim lngResult As Long
        Dim dhcHKeyCurrentUser As Long
        Dim PDFPath As String
        Const dhcRegSz As Long = 1
    1    Workbooks.Open ("\\master\fnshares\bcbcm\Client Management\Client Services\New Account Fees\09 September 2010\3Q10 Rebate Ltrs\Infi\MacroTest\A02.xls")
    2    Select Case ActiveWorkbook.Sheets.Count
    3        Case 1
    4            Sheets(1).Select
    5        Case 2
    6            Sheets(Array(Sheets(1).Name, Sheets(2).Name)).Select
    7        Case 3
    8            Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name)).Select
    9        Case 4
    10            Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name, Sheets(4).Name)).Select
    11        Case 5
    12           Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name, Sheets(4).Name, Sheets(5).Name)).Select
    13      Case 6
    14         Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name, Sheets(4).Name, Sheets(5).Name, Sheets(6).Name)).Select
    15  End Select
    16  dhcHKeyCurrentUser = &H80000001
    17  strDefaultPrinter = Application.ActivePrinter
    18  PDFPath = ActiveWorkbook.Path & Application.PathSeparator 'The directory in which you want to save the file
    19  strOutFile = PDFPath & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & ".pdf" 'Change the pdf file name if required. This should have the fully qualified path
    20  lngRegResult = RegOpenKeyA(dhcHKeyCurrentUser, "Software\Adobe\Acrobat Distiller\PrinterJobControl", lngResult)
    21  lngRegResult = RegSetValueEx(lngResult, Application.Path & "\Excel.exe", 0&, dhcRegSz, ByVal strOutFile, Len(strOutFile))
    22  lngRegResult = RegCloseKey(lngResult)
    23  ThisWorkbook.ActiveSheet.PrintOut copies:=1, ActivePrinter:="Adobe PDF"
    24  Application.ActivePrinter = strDefaultPrinter
    25  ActiveWorkbook.Close False
    End Sub
    From what I can determine, the lines 17 & 24 combined basically accomplish the same thing as the SaveandUpdateDefaultPrinter function in the SDK (get and save the current default printer and return it to that default after printing the PDF).
    Line 20 opens the Registry key for Distiller\PrinterJobControl which is done in part of the ConvertFile function in the following SDK code.
    SDK Code
                Dim objDistillerRegKey As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.ClassesRoot
                Dim strDistillerSubKey As String = "SOFTWARE\\Adobe\\Acrobat Distiller\\PrinterJobControl"
                'Open Current User's Distiller Subkey for writing
                objDistillerRegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(strDistillerSubKey, True)
    Line 21 sets the Registry key for Excel with the name of the PDF file to output which also appears to be done in part of the ConvertFile function in the following code.
    SDK Code
               If (Not objDistillerRegKey Is Nothing) Then     'set reg key value for this app and file
                    objDistillerRegKey.SetValue(strAppPath, strOutputFile)
                    objDistillerRegKey.Close()
                End If
    I have verified, using RegEdit, that this Registry key does get set with the desired output filename.
    Line 23 prints the Excel file to PDF when done manually (this was recorded using the Excel Macro Recorder).  This should be comparable to the PrintToAdobePDF function in the SDK as below.
    SDK Code
        Private Sub PrintToAdobePDF(ByVal InputfilePath As String)
            'Prints InputFilePath to the AdobePDF printer.
            'Since we just gathered all this info programmatically,
            'this function assumes the file is present, that it has an
            'associated application and that the current user has print privileges.
            'Define properties for the print process
            Dim pProcInfo As New ProcessStartInfo
            pProcInfo.FileName = InputfilePath
            pProcInfo.Verb = "Print"
            'Make process invisible
            pProcInfo.CreateNoWindow = True
            pProcInfo.WindowStyle = ProcessWindowStyle.Hidden
            'start print process
            Dim pMyProc As Process = Process.Start(pProcInfo)
            pMyProc.WaitForExit()
        End Sub
    These are some of the statements I can't do because I don't have a ProcessStartInfo type.  What am I doing wrong or NOT doing that the PDF file is not created?  I hope I've described my situation in enough, but not too much detail.  Thanks for your help.
    Nate Brei

    Reinhard & Karl Heinz,
    Thank you both for your responses and willingness to work with me on this problem.  This is driving me crazy & is getting very frustrating.  It seems that I've tried everything that people have suggested (I've also posted on a VB Forum that I subscribe to) and I'm basically doing what works for everyone else but doesn't work for me.  I've got to be close.
    Reinhard, regarding your last post, it doesn't appear to be a one-time setting.  Everytime I come into the Printers Property box (even after I've printed a PDF document manually, that option about system & document fonts is ALWAYS turned on.  If it is a registry setting, please let me know how to turn it off.  I'm using Adobe Acrobat 9 Standard.
    Karl Heinz, I've tried that based on my initial post (see the code there).  Since your post, I tried it again.  I get the same result, NO FILE is produced anywhere.
    I wish I could post pictures, but evidently I can't.  So, I going to post first my code (in case you want to try to recreate my problem), then the values of the variables in that code when I run it (so you can I have everything set correctly as far as I know), and finally, the values of the Registry entries that I have after I run it.  So, please bear with me as the post may be a little long.
    My Code
    Declare Function RegOpenKeyA Lib "advapi32.dll" ( _
        ByVal Key As Long, _
        ByVal SubKey As String, _
        NewKey As Long) As Long
    Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" ( _
        ByVal hKey As Long, _
        ByVal lpValueName As String, _
        ByVal Reserved As Long, _
        ByVal dwType As Long, _
        lpData As Any, _
        ByVal cbData As Long) As Long
    Declare Function RegCloseKey Lib "advapi32.dll" ( _
        ByVal hKey As Long) As Long
    Sub TestPrintPDF()
        Dim strDefaultPrinter As String
        Dim strOutFile As String
        Dim lngRegResult As Long
        Dim lngResult As Long
        Dim dhcHKeyCurrentUser As Long
        Dim PDFPath As String
        Const dhcRegSz As Long = 1
        'Workbooks.Open ("\\master\fnshares\bcbcm\Client Management\Client Services\New Account Fees\09 September 2010\3Q10 Rebate Ltrs\Infi\MacroTest\A02.xls")
        Workbooks.Open ("H:\A02.xls")
        Select Case ActiveWorkbook.Sheets.Count
            Case 1
                Sheets(1).Select
            Case 2
                Sheets(Array(Sheets(1).Name, Sheets(2).Name)).Select
            Case 3
                Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name)).Select
            Case 4
                Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name, _
                 Sheets(4).Name)).Select
            Case 5
                Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name, _
                 Sheets(4).Name, Sheets(5).Name)).Select
            Case 6
                Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name, _
                 Sheets(4).Name, Sheets(5).Name, Sheets(6).Name)).Select
        End Select
        dhcHKeyCurrentUser = &H80000001
        strDefaultPrinter = Application.ActivePrinter
        'The directory in which you want to save the file
        PDFPath = ActiveWorkbook.Path & Application.PathSeparator
        'Change the pdf file name if required. This should have the fully qualified path
        strOutFile = PDFPath & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & ".pdf"
        lngRegResult = RegOpenKeyA(dhcHKeyCurrentUser, "Software\Adobe\Acrobat Distiller\PrinterJobControl", _
            lngResult)
        lngRegResult = RegSetValueEx(lngResult, Application.Path & "\Excel.exe", 0&, dhcRegSz, _
            ByVal strOutFile, Len(strOutFile))
        lngRegResult = RegCloseKey(lngResult)
        ThisWorkbook.ActiveSheet.PrintOut copies:=1, ActivePrinter:="Adobe PDF"
        'ThisWorkbook.ActiveSheet.PrintOut copies:=1, preview:=False, ActivePrinter:="Adobe PDF", _
            printtofile:=True, collate:=True, prtofilename:=strOutFile
        'Call printToPdf(strOutFile)
        Application.ActivePrinter = strDefaultPrinter
        ActiveWorkbook.Close False
    End Sub
    Sub printToPdf(PDFFilename)
        ' Define a postscript file name
        PSFileName = "H:\TempPostScript.ps"
        ' Print the Excel range to the postscript file
        'Dim MySheet As Worksheet
        'Set MySheet = ActiveSheet
        ActiveWindow.SelectedSheets.PrintOut copies:=1, preview:=False, ActivePrinter:="Adobe PDF", _
            printtofile:=True, collate:=True, prtofilename:=PSFileName
        ' Convert the postscript file to .pdf
        Set myPDF = CreateObject("PdfDistiller.PdfDistiller.1")
        myPDF.FileToPDF PSFileName, PDFFilename, ""
    End Sub
    Values of my Variables When I Run the Code
    ? dhcHKeyCurrentUser
         -2147483647
    ? strDefaultPrinter
         \\tcps01p\FNT12W00 Canon 5020 PCL 5e on Ne04:
    ? PDFPath
         H:\
    ? strOutFile
         H:\A02.pdf
    ? lngResult
         2280
    ? Application.Path & "\Excel.exe
         C:\Program Files\Microsoft Office\OFFICE11\Excel.exe
    ? dhcRegSz
         1
    ? Len(strOutFile)
         10
    ? PSFileName
         H:\TempPostScript.ps
    ? PDFFilename
         H:\A02.pdf
    Values of my Registry Entries (HKEY_CURRENT_USER\Software\Adobe\Acrobat Distiller\PrinterJobControl)
    (Default)          REG_SZ          (value not set)
    C:\Program Files\Microsoft Office\OFFICE11\Excel.exe          REG_SZ          H:\A02.pdf
    LastPdfPortFolder - EXCEL.EXE          REG_SZ          "Q:\Client Management\Client Services\New Account Fees\09 September 2010\3Q10 Rebate Ltrs\Infi\MacroTest
    Note:  There are a couple of other entries for documents that I've printed manually that I didn't include.  Also, the last entry above, contains the value of the folder that I last manually "printed" to.
    I've also noticed that I have a Registry SubKey under PrinterJobControl called DownloadFonts.  However, the only entry there is:
         (Default) REG_SZ (value not set)
    Is this the registry key you mentioned, Reinhard?
    As you can see in my code, I have 3 different methods that I've tried to print.  The first one defaults everything after selecting the Acrobat PDF printer.  The second sets the output filename as a PDF (basically what you suggested, Karl Heinz).  The third method calls a procedure that prints to a PostScript file & then uses Distiller to print from that file to pdf.  This is the method Reinhard suggested.
    With the first 2 methods, I get NO error messages, but no file(s) show up.  With the 3 method, I get the error about the Fonts checkbox, but it creates a 0K PostScript file.  When I skip that statement and run the other 2 statements, I get a log file that says the PostScript file is empty and not PDF file was created.
    YIKES...  What's going on?  Thanks again for attempting to help me!!!
    Nate

  • Acrobat 9.0 Standard. Setting PDF file password from Excel VBA

    Acrobat 9.0 Standard. Setting PDF file password from Excel VBA
    Hi: I am trying to find a call to set the password of a PDF file that I am creating from Excel Workbook using a VBA call.
    I basically have this Excel VBA code that works fine and creates a file.
                pBook.PrintOut Copies:=1, preview:=False, ActivePrinter:="Adobe PDF", _
                               PrintToFile:=True, collate:=True, PrToFileName:=PSFileName
                ' Convert the postscript file to .pdf
                Dim myPDF As PdfDistiller
                Set myPDF = New PdfDistiller     
                myPDF.FileToPDF PSFileName, "", ""
    BUT, I need to set the password on this PDF file and do not see an option to do so.
    Can you provide a solution for this situation? Appreciate your response in advance.
    Thanks.

    There is no way to set password programmatically using any other dll or any other kit?
    I am creating a bunch of PDF files for users programmatically but then they have to go in and set password themselves? This is very inconvenient for users.

  • Call Transaction from Excel VBA macro and download ALV list object results

    I have a situation that must be very common u2013 but I canu2019t find any clear information on how to get it done! 
    We frequently run SAP transactions, download the results (orders or inventory) into Excel, do some calculations and create a spreadsheet report. 
    I would like to automate this process using Excel VBA so that a macro will perform these steps:
    1. Run our custom SAP report "YSD033" that summarizes orders using the previous day as the [From Date] parameter.  (The user already has an active ECC 6 R3 session running.)   If possible, can the TC be run using a specific variant "G111BIZ" ?
    2. Download the list object that appears in an ALV grid as a table to an empty spreadsheet in the active workbook (export XXL list object)
    3. Save the resulting workbook and close Excel.
    Should the solution use u201Ccall transactionu201D or a GuiXT script?
    Any help would be much appreciated, and some sample VBA code would be great!
    Thanks.
    Glenn

    Good suggestion, but
    I get "permission denied" for   SapGuiAuto.GetScriptingEngine
    I also tried the method below, but received this RFC error message:
    User PPPPPPP  has no RFC authorization for function group SYST.
    Sub LoginCheck()
    If login = False Then
        ' Setting the necessary variables for R/3 connection
        Set objBAPICortrol = CreateObject("SAP.Functions")
        Set objConnection = objBAPICortrol.Connection
        ' Establish a connection
    If objConnection.Logon(0, False) Then
        login = True
        MsgBox "Connection Established"
        CommandButton1.Caption = "Disconnect"
    End If
    Else
        CommandButton1.Caption = "Connect 2 SAP"
        login = False
        objConnection.Logoff
        Set objConnection = Nothing
        Set objBAPICortrol = Nothing
    End If
    End Sub
    I was told that these kinds of authority open up too big of a window that can't be monitored adequately...
    I'm considering an approach like what is below if I can't convince security to grant me permissions...
        Application.Wait Now + TimeValue("00:00:01")
        SendKeys EnterKey, False
    Since blocked RFC security settings are preventing the solution from being installed, I am markgin this question as answered. 
    I will post different questions about 1. how to convince the security team that it will be safe to allow the use of RFC calls, and /or 2. how use some windows-level scripting code to run the SAP jobs.
    Thanks.
    Edited by: GlennWebster on Mar 1, 2010 4:34 PM

  • How to call Copy.GetItem Method in Excel vba function

    Hi,
    I want to use sharepoint copy services to download/upload or retreive field information of a sharepoint file.
    For that i want to sharepoint web services. One class among them is copy. I want to call the GetItem method present in that class.
    Think that modules are not installed or not found in excel vba editor tools reference library list to enable.
    So please provide me the steps from scratch to install the sharepoint library. and call the Copy class methods in my script.
    Just send me a sample vba code to accomplishes the same requirement. I appreciate the help.
    Regards,
    SUBBA

    Hi SUBBA,
    The following articles for your reference:
    VBA - Download files from sharepoint
    http://ckannan.blogspot.com/2012/09/vba-download-files-from-sharepoint.html
    Using Microsoft Windows SharePoint Services with the Microsoft Office System
    http://msdn.microsoft.com/en-us/library/office/aa159897(v=office.11).aspx
    How to download a file from a Sharepoint server via Excel VBA?
    http://www.justanswer.com/computer-programming/7ntq7-download-file-sharepoint-server-via-excel-vba.html
    About the Excel VBA questions, you can also post it to Excel for Developers Forum, you will get more help and confirmed answers from there.
    http://social.msdn.microsoft.com/Forums/office/en-US/home?forum=exceldev<o:p></o:p>
    Best Regards
    Dennis Guo
    TechNet Community Support

  • Excel VBA add-in to create a PDF: What is acrodistdll.dll?

    My Excel VBA add-in prints an Excel sheet with a list of drawing numbers, then prints all the drawings (it communicates with a CAD and a CAM application via COM). Then it repeats the cycle many times, with different list of drawings. At the end I have hundreds or thousands of paper sheets.
    I want to create a PDF file instead of wasting that much paper, so I explored the Adobe objects available in my computer and I found out that adding a reference in the VBA project to Acrobat.dll and to acrodistdll.dll I could use the PdfDistiller to convert PostScript files to PDF and the Acrobat.CAcroApp, Acrobat.CAcroPDDoc and Acrobat.CAcroPDDoc objects to merge many PDF files into one large PDF file. Then I use the external tool pdftk to create the bookmarks.
    Everything works well on my computer, but when I try to use the Excel add-in on another computer the references are missing.
    I don't know what was installed on my computer. The IT department said that some of our computers have no Adobe products, some have only free Adobe products, and some have some products that we purchased. But they don't know what purchased or free products were installed on my computer.
    So my questions are:
    Are the above mentioned DLLs the correct tool to achieve my goal?
    If no, what is the best way?
    If yes, how do I install them on the other computers? Are they part of some free product or are they part of a product that I need to purchase?
    Thanks,
    Stefano

    The relevant page in the documentation is here:
    http://livedocs.adobe.com/acrobat_sdk/10/Acrobat10_HTMLHelp/wwhelp/wwhimpl/common/html/wwh elp.htm?context=Acrobat10_SDK_HTMLHelp&file=Distiller_WinIntro.61.11.html
    Don't forget to click the button in the top left corner to get the navigation pane.
    I wrote a blog post about this problem - with sample code - a while ago:
    http://khkonsulting.com/2013/01/prevent-the-save-dialog-when-printing-to-the-adobe-pdf-pri nter/
    Information about the difference with 64bit systems is in the comments.
    Karl Heinz Kremer

  • How to execute a "real" VBS command in DIAdem script?

    Hello,
    I've some troubles to execute specific "real" VBS command lines in DIAdem script: 
    e.g.: 
    Workbooks.OpenText filname, DataType:=xlDelimited, tab:=True, DecimalSeparator:=",", ThousandsSeparator:="."  
    Using other writings as
    Workbooks.OpenText(filname, DataType:=xlDelimited, tab:=True, DecimalSeparator:=",", ThousandsSeparator:=".")Workbooks.OpenText filname, "DataType:=xlDelimited", "tab:=True", "DecimalSeparator:=','", "ThousandsSeparator:='.'"  
    don't help, I always get error messages. It seams, that DIAdem has problems with recognition of  := .
    How can I include such kind of VBS command line in a DIAdem script without getting problems?
    Sven

    Hi,
    thanks for answer, but unfortunately its not over yet.
    I tryed the following possibilities:
    Set create_tabfile = Excel.Workbooks.OpenText(Filename,,,xlDelimited,,,True,,,,,,,,".",",",,True)Set create_tabfile = Excel.Workbooks.OpenText(Filename,,,xlDelimited,,,1,,,,,,,,".",",",,1) Set create_tabfile = Excel.Workbooks.OpenText(Filename,,,"xlDelimited",,,True,,,,,,,,".",",",,True)  Set create_tabfile = Excel.Workbooks.OpenText(Filename,,,"xlDelimited",,,1,,,,,,,,".",",",,1)  Set create_tabfile = Excel.Workbooks.OpenText(Filename,,,1,,,True,,,,,,,,".",",",,True)Set create_tabfile = Excel.Workbooks.OpenText(Filename,,,1,,,1,,,,,,,,".",",",,1)but always I get some error messages. I assume, that there is just a format error in the command line, may you help me out with some hints, how to do it right?
    Regards
    Sven

  • Powershell Variable from Excel.VBA Macro

    Hi Guys!
    I don't know if what i'm asking you is achievable.
    I've learned how to pass variables/arguments from powershell to Excel/VBA Macro but i need to do the opposite thing.
    This is an example of what  i want:
    Powershell                                                                      
                       Excel/VBA Macro
    $Input=1   ---------------------------------------------------------------->   Sub Macro(input)
    $excel.Run("Macro",$Input)                                                              
      Output=input +6
    $output (Expected 7)   <----------------------------------------------------  return Output
    I don't know how to do this can you help me please?
    A

    Ok guys those are the script.
    Macro:
    Sub CreatePWD()
    Dim PWD As String
    Dim i As Integer
    Dim Max As Integer
    Dim F1 As Worksheet
    Set F1 = ThisWorkbook.Worksheets("Foglio1")
    Max = F1.Range("A1").Value
    For i = 1 To Max
    If Int((2 * Rnd) + 1) = 1 Then
    PWD = PWD & Chr(Int((90 - 65 + 1) * Rnd + 65))
    Else
    PWD = PWD & Int((9 - 0 + 1) * Rnd + 0)
    End If
    Next i
    MsgBox PWD
    End Sub
    Powershell:
    $Excel = New-Object -ComObject excel.application
    $Excel.visible=$false
    $Version = "C:\Users\Alberto Corona\Desktop\Cartel1.xlsm"
    $WorkBook= $Excel.workbooks.open($Version)
    $WorkSheet= $WorkBook.worksheets.item(1)
    $WorkSheet.cells.item(1,1)=5
    $Excel.Run("CreatePWD")
    $WorkBook.save()
    $WorkBook.close()
    $Excel.quit()
    The result of macro is like "52UT7" i want a variable in powershell called $PWD that contain the value of the macro. 
    Hope the problem is clear now.
    Thanks
    A

  • Execute Excel Macro Through DIAdem

    Hi All,
      I am currently trying to run a script in DIAdem which exports certain material properties to an Excel Macro-enabled workbook.  Inside the Excel workbook the user executes a macro to perform some calculations.  The results of that calculation will then be re-imported into a DIAdem report.  I have the import/export data part down, but the million dollar question is how can I execute an Excel macro from DIAdem's VBScript?
      I know some are going to say this makes no sense, just do the calculation in DIAdem.  I know this, but the file/calculations are an industry accepted toolbox and it must be done this way. 
      Thanks in advance and here is some dumbed down code to showcase the example:
    Option Explicit 'Forces the explicit declaration of all the variables in a script.
    Dim excel
    Dim excelbook
    Dim a
    Set Excel = CreateObject("Excel.Application")
    Excel.Visible = True
    Set excelbook=Excel.Workbooks.Open("My File")
    excelbook.Sheets("InputResults").range("B5").value = Data.Root.ChannelGroups(ChanGrp#).Properties("myProp").Value
    'Call 'My_Macro' !!!!!!!!!!!!!!!!!!!!
    Msgbox("Result is: " & excelbook.Sheets("InputResults").range("B5").value)
    Solved!
    Go to Solution.

    Hi GT_Mark
    You simply can use the methode Run
    Call Excel.Run("MyMacro")
    Of course you have to make sure that you refer only to data that are available in Excel.
    To obtain CodeCompletion for Excel in the script editor select Microsoft Excel x.x Objects Library in the "Registed Type Libraries" dialog box. The x.x value depends on your installed Excel version.  To open this dialog box, select Script»Type Libraries in DIAdem SCRIPT.
    Hope this helps
    Winfried

Maybe you are looking for

  • Windows Updater Not Installing and Troubleshooter Wizard Is Not Working???

     I am in need help desperately!         I have tried to install the Windows 7 latest update since late October 2014 and every time that I have tried it has failed, this is messing with certain programs to either not run such as my Troubleshooter, lea

  • Iphoto changes the date on some events to a date in the future

    I went into my iphoto and noticed some events had been changed to a date in the future.  It seems to do it on random events. It also grouped all of my videos into one event dated the end of May.  Does anyone know what causes this and how to prevent i

  • Document Management Repositories

    First a little background: We have recently purchased Oracle Workflow (Standalone)for use in a Content Management application, along with the Internet File system, and Oias. The application is intended to be a moderately simple (Create), Edit, Review

  • Failed to convert Catalog (PS Album 2.0 to PSE 7.0)

    When attempting to convert My Catalog from Photoshop Album 2 to PSE 7, the following prompt is reported "The conversion operation failed. try repairing the catalog with the software that created it and retry conversion" I have attempted to repair/uni

  • Step to Follow in SLD, IR, ID

    Hi, Please Provide me Common steps that follows in configuration of SLD, IR, ID. Thanks Laxmi Bhushan Jha