Excel Macro Virus

Someone sent me a PC excel file that had 4.0 macros. I'm running Office 2004 for the Mac. Now, whenever I open that sheet, even with macros off, any file open then has a macro. No virus is showing with virus scans. I've scanned the file in Windows as well. I can't see the macros to delete. Any one else having this problem?

A macro called "Analysis ToolPak" in my Excel 2004 program makes Symantec Anti-Virus crash. Is this a macro virus? Can I simply put the macro in the trash to delete it? Simultaneously, a permission error has appeared that Disk Utility cannot repair. Is this connected?
Thanks in advance

Similar Messages

  • Running Excel macros from ABAP

    Hello everyone,
    I am trying to execute an Excel macro from an ABAP program.  We are currently on a 46C system.  While doing some research on help.sap.com I came across the method execute_macro in class i_oi_document_proxy.  I’ve never used methods in ABAP before and I’m not really sure what I’m doing.  Has anyone got this to work?  When I try to run the program it dumps with error OBJECTS_OBJREF_NOT_ASSIGNED.
    Thanks,
    Becky
    Here is the program:
    REPORT ztest_program.
    INCLUDE ole2incl.
    DATA gs_excel TYPE ole2_object .
    DATA gs_wbooks TYPE ole2_object .
    DATA gs_wbook TYPE ole2_object .
    DATA gs_application TYPE ole2_object .
    DATA: h_sheet TYPE ole2_object.
    DATA: document TYPE REF TO i_oi_document_proxy.
    *Name of the macro in Excel
    DATA: macro_string(50) TYPE c
                     VALUE 'FB03process.FromTheBeginning',
          no_flush TYPE c,
          param_count TYPE i VALUE 0,
          script_name TYPE c VALUE 'X',
          error TYPE REF TO i_oi_error
                OCCURS 0 WITH HEADER LINE,
          retcode TYPE soi_ret_string,
          error_string(50) TYPE c,
          retvalue(30) TYPE c.
    CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
       EXPORTING
             text       = text-007
         EXCEPTIONS
              OTHERS     = 1.
    CREATE OBJECT gs_excel 'EXCEL.APPLICATION' .
    SET PROPERTY OF gs_excel 'Visible' = 1 .
    GET PROPERTY OF gs_excel 'Workbooks' = gs_wbooks .
    GET PROPERTY OF gs_wbooks 'Application' = gs_application .
    *--Opening the existing document
    CALL METHOD OF gs_wbooks 'Open' = gs_wbook
         EXPORTING #1 = 'D:\temp\FB03process.xls' .
    tell user what is going on
    CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
       EXPORTING
              PERCENTAGE = 0
             text       = text-009
         EXCEPTIONS
              OTHERS     = 1.
    GET PROPERTY OF gs_excel 'ACTIVESHEET' = h_sheet.
    CALL METHOD document->execute_macro
         EXPORTING macro_string  = macro_string
                   param_count   = param_count
                   script_name   = script_name
                   no_flush      = no_flush
         IMPORTING error         = error
                   retcode       = retcode
         CHANGING  error_string  = error_string
                   retvalue      = retvalue.
    disconnect from Excel
    FREE OBJECT gs_excel.
    PERFORM err_hdl.
    FORM err_hdl.
      IF sy-subrc <> 0.
        WRITE: / 'Fehler bei OLE-Automation:'(010), sy-subrc.
        STOP.
      ENDIF.
    ENDFORM.                    " ERR_HDL

    Hi,
    Please correct me if I am wrong but it seems that you have not fetched a handle to the document object before issuing the statement CALL METHOD document->execute_macro. Hence the error OBJECTS_OBJREF_NOT_ASSIGNED is being dislayed. If you want to use SAP Desktop Office Integration using ABAP Objects, take a look at this article at http://www.intelligenterp.com/feature/archive/ or http://www.sapinfo.net/public/en/index.php4/article/comvArticle-193333c63b4bd807d2/en/articleStatistic
    Hope this helps.
    Regards
    Message was edited by: Shehryar Khan

  • How to call excel macros programmatically in C#?

    Hi,
    I have a requirement where i need to call excel (2003) macros in C# program. Can anyone help me with a code snippet to do the same?
    The excel macro function takes two input parameters? how can the parameters be passed?
    Any code snippet to do the same in C# would be helpful.
    Thanks.

    Hey there, Sid.  I am tryin gto run your code, but I couldn't even gte it to fire.  Here's what I ahve now:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using Excel = Microsoft.Office.Interop.Excel;
    namespace WindowsFormsApplication2
        public partial class Form1 : Form
            private void button1_Click(object sender, EventArgs e)
                //~~> Define your Excel Objects
                Excel.Application xlApp = new Excel.Application();
                Excel.Workbook xlWorkBook;
                //~~> Start Excel and open the workbook.
                xlWorkBook = xlApp.Workbooks.Open("C:\\Users\\Ryan\\Desktop\\Coding\\Microsoft Excel\\Work Samples\\Work Samples\\Historical Stock Prices.xlsb");
                //~~> Run the macros by supplying the necessary arguments
                xlApp.Run("ShowMsg", "Hello from C# Client", "Demo to run Excel macros from C#");
                //~~> Clean-up: Close the workbook
                xlWorkBook.Close(false);
                //~~> Quit the Excel Application
                xlApp.Quit();
                //~~> Clean Up
                releaseObject(xlApp);
                releaseObject(xlWorkBook);
            //~~> Release the objects
            private void releaseObject(object obj)
                try
                    System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
                    obj = null;
                catch (Exception ex)
                    obj = null;
                finally
                    GC.Collect();
    When I hit the play button nothing happens.  When I hot F5 nothing happens.  Do you ahve any idea what I'm doing wrong.  I'd appreciate any advice with this!! 
    Thanks!!
    Knowledge is the only thing that I can give you, and still retain, and we are both better off for it.

  • MS Word 2004 Macro viruses - how do I clean old files?

    Hi,
    We just got a new iMac and it's running Leopard. MS Office 2004 is installed and I transferred files from my old blueberry iMac about a week ago. Ever since, when I open a Word document from the old computer it asks if I would like to enable macros. If I disable, then the file opens as "read only." These are simple Word documents, though... I didn't put any macros in.
    I suspect I have a macro virus on the files and now it's infiltrated my new computer. My university provides a copy of McAfee Virus Scan 8.5i but it won't launch.
    What do I have to do to clean my new computer and these files? Once upon a time, during OS 10.3 or so, I had a similar problem but I ended up wiping the hard drive clean. I need these old files, though.
    Thanks in advance.

    *"What do I have to do to clean my new computer and these files?"*
    You already know what you have to do...get antivirus software.
    Try http://www.macupdate.com/info.php/id/15850/clamxav

  • Excel macro error after deploying in Weblogic

    Halo,
    I have written excel macros and it is working fine.
    but if the same file if i try to open from hyperlink after deploying in Weblogic server , I get the error
    "error occured initializing the VBA libraries.
    If Microsoft Visual Basic for Applications (VBA) was not installed, or was set to Install on first use,
    (advertised, or set to install on demand) you may receive this error message.
    Depending on the mode of installation used and the rights of the user to change current settings,
    it is possible to install VBA through Control Panel, Add/Remove Programs, Microsoft Office, Add or Remove
    features. If Visual Basic for Applications is not listed as an installable feature of Office, the administrator
    of your system may have disabled it so it is impossible for you to install it. If VBA is not installed,
    it is impossible to run VBA applications/projects on this computer. "
    1. Even though Excel VBA application is installed in my machine , why am i getting this error.??
    2. I would like to know is there any way to open the excel file even though if the excel software is not installed in client machine??
    Appreciate your help.
    Thanks.

    Hi,
    I do not see any reason for this to not work.
    Is there any difference between the preferences for RX and RXI. Please go to "edit" -> "Preferences" -> "Security(Enhanced)" and uncheck "Enable protected mode at startup".
    Are you able to open any pdf from command line with the same command:
    "C:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe"  <<PDF_FILE>>
    Thanks,
    Amish.

  • Using Excel macros & change properties

    Hi,
    1) my program use Excel macro via a runtime.exec(cmd). I want to use JWS to deliver new versions of application but if I have to put my macros in a jar file how can I reach them (no problem with a file propertie or with gif ressources).
    2) how can I change default properties ("Dossier des applications" in French maybe Applications dir in advanced) wich is enabled in the window.
    thanks a lot
    Sophie

    1) my program use Excel macro via a runtime.exec(cmd).
    I want to use JWS to deliver new versions of
    application but if I have to put my macros in a jar
    file how can I reach them (no problem with a file
    propertie or with gif ressources).You have a lot of options how to do this.
    I would try to use the I/O APIs that reads the macro file
    from a web server (InputStream is = url.openStream()) and put it
    in a local file (FileOutputStream = new FileOutputStream(file)).
    Of course you would need a local location where to store it, could
    be hardwired, or asked from the user.
    2) how can I change default properties ("Dossier des
    applications" in French maybe Applications dir in
    advanced) wich is enabled in the window.I do not understand what you want to do. Explain again.
    Regards,
    Marc

  • What is a macro virus nd how do I kill it?

    I have a new Macbook (well, I got it 6 months ago), and Saturday I used a student's flash drive (right. brain fade-NEVER do that, but I did). Now, every time I open a document in Word, it asks if I want to enable macros (which I did on the first one,because it had macros that I needed). I asked a friend at the University today who said, basically, Macs can suffer from viruses. . . macro viruses. But he offered no help, being gleeful that another high-annd-might Mac user was brought low.
    So . . .help! what can I do?
    ccp

    Thanks for the links and sugestions! I still have questions, though: if there isn't a virus, what could be causing thses weird and sudden behaviours?
    --The machine WON"T restart; when I hit restart, the desktop image fades slightly and all the icons and dock disappear, but the finder bar stuff on the far right (Bluetooth icons, etc) remain and then nothing happens. I have to press and hold the start button to shut it off.
    --before I ran the ClamXav, when I opened docs, they'd act funny. . . suddenly become "read only" or change fonts w/o any command
    --none of the word docs Ihave opened since I ran ClamXav have popped that Mcro warning box
    Is there anything else going on? I have had three Macs since 2001, a G$ desktop, a G$ Powerbook, and this one. The desktop had a bad hard drive--which died--and has never been right since it was replaced; the Powerbook is currently inactive because the third Power adapter cord broke and I am waiting for a new one to arrive. . .
    So I am SERIOUSLY nervous about this Macbook -- I do not want to have anything go wrong if I can avoid it.
    ccp

  • How do I make an Excel macro and Labview push to copy Labview calculated data into a cell on demand?

    Hey there, I am a chemist so Labview and programming aren't exactly my strong point. 
    We have a Labview program that we run to control and automated valve manifold that has a thermocouple and pressure transducer that displays the temperature and pressure on the "front panel" of the labview file we run.  The temperature and pressure of the manifold changes in real time while the labview is running.  We must attach a sample to the manifold, take the pressure and temperature, then record those values in an excel spread sheet, one at a time.
    What I would like to do is make a key board macro in excel to automatically type in the current read out of the temperature (and another for pressure) into which ever selected excel cell you are on, so that you don't have to switch back to the labview window to look at it.  I have a very basic understanding of macros in VB but I don't know how to get the labview to make the read outs available for the excel macros to find it.
    Thanks for the help, Here is a screen shot of the block layout of the program.
    Attachments:
    back.JPG ‏79 KB

    Why not have LV put the data in Excel for you?  You can use Actvie X to do this.  There is plenty of information on the forum and knowledge base on how to use Active X and reporting to Excel.  Plus you have the example finder.  Do you have the Report Generation Toolkit?  LV7 is quite old, so I don't know if this is an option for you.
    Reese, (former CLAD, future CLD)
    Some people call me the Space Cowboy!
    Some call me the gangster of love.
    Some people call me MoReese!
    ...I'm right here baby, right here, right here, right here at home

  • 'Edit in Place' for XLSM-files (Excel Macro-Enabled)

    Hi,
    is it possible to activate 'Edit in Place' for xlsm-files (Excel Macro-Enabled Workbook file)?
    For xls(x)-files there is the link 'Edit This File', but not for files of type 'xlsm' allthough they could be dealt the same way with Excel.
    I know I can edit this files using the 'Add-in for MS Office' and via the 'Vibe Desktop', but it would be nice to deal them like other Excel-files.
    thx
    Martin

    Originally Posted by mschuhmann
    RTFM helps I admit:
    Novell Vibe 3.3 Administration Guide > Site Setup > Setting Up Site-Wide Customizations > Configuring File Associations for Edit in Place Applications
    Novell Doc: Novell Vibe 3.3 Administration Guide - Configuring File Associations for Edit in Place Applications
    Append ".xlsm" for the variable edit.in.place.file.applet.extensions, edit.in.place.file.webdav.extensions
    Hi Martin,
    Yeah, the Vibe docs can help on occasion
    Still, thanks for feeding it back to the forums as it can be quicker finding a hit in the forums than having to go through the docs!
    Cheers,
    Willem

  • Export to Excel - Macro problems

    I have moved this to the Discoverer forum. Exporting to Excel - Macro Problems
    Message was edited by:
    user385142

    Hello Denes.
    Excuse me for send you a message in this way , but I dont find other way to contact with you.
    Im using the export_excel_pkg, and really it work good.
    I have only one problem, I tell you.
    When, in one item, data is very long and numeric, by example a EAN code, without any class of format, by default it give me the value ###, Im studing the package and trying to resolve this, but if you can send me any idea it can help me a lot.
    Thanks in advanced.
    You are doing a great work for us.

  • Execute Infopackage Through BAPI Using Excel Macro (BAPI_IPAK_START)

    Hi everyone,
    I have a problem when execute infopackage through BAPI using excel macro. I have create a button in macro. When this button is clicked, BAPI for trigger InfoPackage will executed (BAPI_IPAK_START) and this button will disabled.
    After this process completely done (traffic indicator for the request is green in update rules), the button will enabled again.
    Here the subroutine or pseudocode that i will write :
    Private Sub ClickButton()
    Begin
    1. ThisButton.Activated = False   --> Disabled Button
    2. Call BAPI/custom Function Module to execute InfoPackage (BAPI_IPAK_START)
    4. ThisButton.Activated = True   --> Enabled Button
    End
    The problem is i need some statement like this between statement no 2 and statement no 4
    Statement That I Want :
    3. Wait Until BAPI Execute Completely
    So user can click this button again only after the process is finished completely. I don't know how to do this in macro (in ABAP i know i can use "WAIT ... SECOND"), others said this can be done using event in schedule option at infopackage. Anyone,please help me.
    Thank you.
    Regards,
    Satria B

    Enter that req number in RSRQ and monitor the load
    or  right click on the DS - manage - you will req in yellow status which is in progress and you can click on the ...takes you monitor screen
    Edited by: Srinivas on Jul 6, 2010 7:51 AM

  • Excel macro on SharePoint 2013

    Hi,
    I know that SharePoint doesn't support Excel macro but in the next future will it change anything?
    Thanks

    Hi,
     I don't think so it may happen. May be in next release of SharePoint version we can expect some extra features like this. Let's wait and see
    Sekar - Our life is short, so help others to grow
    Whenever you see a reply and if you think is helpful, click "Vote As Helpful"! And whenever
    you see a reply being an answer to the question of the thread, click "Mark As Answer

  • Excel Macro to click on publish button of Master Data Services Add-in

    I am creating an excel macro to perform extra validation and defaults whilst the user is editing the MDS entity. It will be added as a workbook add-in. At the end of the macro I would like to be able to launch publish. The MDS addin is a ribbon.
    Does anyone have an example of how I can simulate a click on the Publish button or what the call that the button does is?
    David Roseneder

    Hi David
    here is a code sample to add mds actions with excel Buttons
    you can find the connection class separately, by downloading my sample project (C#) on codeplex :
    http://mdsmanager.codeplex.com
    (I use this MDS connection class for many projects)
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Xml.Linq;
    using Microsoft.VisualStudio.Tools.Applications.Runtime;
    using Excel = Microsoft.Office.Interop.Excel;
    using Office = Microsoft.Office.Core;
    using System.Xml;
    using System.Collections.ObjectModel;
    using Common.ServiceReference1;
    namespace ExcelToMDS
    public partial class Sheet1
    public const string mdsEndPoint = "http://yourMDSEndpointUrl:4040/Service/Service.svc";
    ServiceClient c = null;
    International intl = new International();
    OperationResult or = new OperationResult();
    Metadata md = null;
    private void Sheet1_Startup(object sender, System.EventArgs e)
    using (var c = Common.MDS_WSConnect.CreateMdsProxy("yourdomain", "yourlogin", "yourpassword", mdsEndPoint))
    c.Open();
    International intl = new International();
    OperationResult or = new OperationResult();
    md = GetMetaData(intl, ref or);
    cbModels.Items.Clear();
    foreach (Model mo in md.Models)
    cbModels.Items.Add(mo.Identifier);
    cbModels.DisplayMember = "Name";
    cbEntities.Visible = true;
    private Metadata GetMetaData(International intl, ref OperationResult or)
    MetadataResultOptions mro = new MetadataResultOptions();
    MetadataSearchCriteria msc = new MetadataSearchCriteria();
    msc.Models = new Collection<Identifier>() { new Identifier() };
    msc.Versions = new Collection<Identifier>() { new Identifier() };
    msc.SearchOption = SearchOption.UserDefinedObjectsOnly;
    mro.Models = ResultType.Identifiers;
    mro.Versions = ResultType.Identifiers;
    cbModels.Items.Clear();
    Metadata md = c.MetadataGet(intl, mro, msc, out or);
    return md;
    private void Sheet1_Shutdown(object sender, System.EventArgs e)
    if (c != null && c.State != System.ServiceModel.CommunicationState.Closed)
    c.Close();
    #region VSTO Designer generated code
    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InternalStartup()
    this.btGetMDSData.Click += new System.EventHandler(this.btGetMDSData_Click);
    this.btGetTransactions.Click += new System.EventHandler(this.btGetTransactions_Click);
    this.btUpdateAttribute.Click += new System.EventHandler(this.btUpdateAttribute_Click);
    this.cbModels.SelectedIndexChanged += new System.EventHandler(this.cbModels_SelectedIndexChanged);
    this.cbMembers.SelectedIndexChanged += new System.EventHandler(this.cbMembers_SelectedIndexChanged);
    this.cbEntities.SelectedIndexChanged += new System.EventHandler(this.cbEntities_SelectedIndexChanged);
    this.cbVersions.SelectedIndexChanged += new System.EventHandler(this.cbVersions_SelectedIndexChanged);
    this.cbAttributes.SelectedIndexChanged += new System.EventHandler(this.cbAttributes_SelectedIndexChanged);
    this.btReverseTran.Click += new System.EventHandler(this.btReverseTran_Click);
    this.Shutdown += new System.EventHandler(this.Sheet1_Shutdown);
    this.Startup += new System.EventHandler(this.Sheet1_Startup);
    #endregion
    private void btGetMDSData_Click(object sender, EventArgs e)
    Cursor.Current = Cursors.WaitCursor;
    DisplayEntityMembers(c);
    Cursor.Current = Cursors.Default;
    private void DisplayEntityMembers(ServiceClient c)
    EntityMembers em = GetEntityMembers(c);
    if (em != null)
    Member[] members = em.Members.ToArray();
    ((Excel.Range)this.Cells[2, 2]).Value2 = "MemberName";
    ((Excel.Range)this.Cells[2, 3]).Value2 = "AttributeName";
    ((Excel.Range)this.Cells[2, 4]).Value2 = "AttributeValue";
    for (int i = 0; i < members.Length; i++)
    ((Excel.Range)this.Cells[i + 3, 2]).Value2 = members[i].MemberId.Name;
    int cptAtt = 0;
    foreach (Common.ServiceReference1.Attribute att in members[i].Attributes)
    ((Excel.Range)this.Cells[i + 3, cptAtt + 3]).Value2 = att.Identifier.Name.ToString();
    ((Excel.Range)this.Cells[i + 3, cptAtt + 4]).Value2 = att.Value != null ? att.Value.ToString() : "";
    cptAtt += members[i].Attributes.Count();
    private EntityMembers GetEntityMembers(ServiceClient c)
    if (cbModels.SelectedItem != null && cbEntities.SelectedItem != null && cbVersions.SelectedItem != null)
    EntityMembersGetCriteria emGetCrit = new EntityMembersGetCriteria();
    emGetCrit.ModelId = new Identifier() { Name = ((Identifier)cbModels.SelectedItem).Name };
    emGetCrit.EntityId = new Identifier() { Name = ((Identifier)cbEntities.SelectedItem).Name };
    emGetCrit.VersionId = new Identifier() { Name = ((Identifier)cbVersions.SelectedItem).Name };
    //ExportView[] ev = c.ExportViewListGet(new International(), out or);
    EntityMembersInformation emi = new EntityMembersInformation();
    emGetCrit.DisplayType = DisplayType.CodeName;
    EntityMembers em = c.EntityMembersGet(intl, emGetCrit, out emi, out or);
    return em;
    else
    MessageBox.Show("Please select model, version and entity in comboboxes");
    return null;
    private void btGetTransactions_Click(object sender, EventArgs e)
    if (cbModels.SelectedItem != null)
    this.Rows.Clear();
    using (var c = Common.MDS_WSConnect.CreateMdsProxy("yourdomain", "yourlogin", "yourpassword", mdsEndPoint))
    c.Open();
    DisplayTransactions(c);
    c.Close();
    else
    MessageBox.Show("Please select Model in combos");
    private void DisplayTransactions(ServiceClient c)
    string versionName = "VERSION_1";
    if (cbVersions.SelectedItem != null)
    versionName = ((Identifier)cbVersions.SelectedItem).Name;
    TransactionSearchCriteria trSrchCrit = new TransactionSearchCriteria();
    trSrchCrit.ModelId = new Identifier() { Name = ((Identifier)cbModels.SelectedItem).Name };
    //trSrchCrit.EntityId = new Identifier() { Name = ((Identifier)cbEntities.SelectedItem).Name };
    trSrchCrit.EntityId = new Identifier();
    trSrchCrit.VersionId = new Identifier() { Name = versionName };
    //ExportView[] ev = c.ExportViewListGet(new International(), out or);
    EntityMembersInformation emi = new EntityMembersInformation();
    int totalTranCount = 0;
    Collection<Transaction> transactions = new Collection<Transaction>();
    OperationResult or = c.TransactionsGet(intl, trSrchCrit, out totalTranCount, out transactions);
    int startY = 4;
    int startDataY = startY + 1;
    int startX = 4;
    ((Excel.Range)this.Cells[startY, startX]).Value2 = "TransactionID";
    ((Excel.Range)this.Cells[startY, startX + 1]).Value2 = "Code";
    ((Excel.Range)this.Cells[startY, startX + 2]).Value2 = "Name";
    ((Excel.Range)this.Cells[startY, startX + 3]).Value2 = "MemberType";
    ((Excel.Range)this.Cells[startY, startX + 4]).Value2 = "Date";
    ((Excel.Range)this.Cells[startY, startX + 5]).Value2 = "AttributeName";
    ((Excel.Range)this.Cells[startY, startX + 6]).Value2 = "PriorValue";
    ((Excel.Range)this.Cells[startY, startX + 7]).Value2 = "NewValue";
    for (int i = 0; i < transactions.Count(); i++)
    ((Excel.Range)this.Cells[i + startDataY, startX]).Value2 = transactions[i].Id.ToString();
    ((Excel.Range)this.Cells[i + startDataY, startX + 1]).Value2 = transactions[i].MemberId.Code;
    ((Excel.Range)this.Cells[i + startDataY, startX + 2]).Value2 = transactions[i].MemberId.Name;
    ((Excel.Range)this.Cells[i + startDataY, startX + 3]).Value2 = transactions[i].MemberId.MemberType.ToString();
    ((Excel.Range)this.Cells[i + startDataY, startX + 4]).Value2 = transactions[i].Date.ToString();
    ((Excel.Range)this.Cells[i + startDataY, startX + 5]).Value2 = transactions[i].AttributeId.Name;
    ((Excel.Range)this.Cells[i + startDataY, startX + 6]).Value2 = transactions[i].PriorValue;
    ((Excel.Range)this.Cells[i + startDataY, startX + 7]).Value2 = transactions[i].NewValue;
    private void btUpdateAttribute_Click(object sender, EventArgs e)
    Cursor.Current = Cursors.WaitCursor;
    using (var c = Common.MDS_WSConnect.CreateMdsProxy("yourdomain", "yourlogin", "yourpassword", mdsEndPoint))
    c.Open();
    EntityMembers em = GetEntityMembers(c);
    Member[] members = em.Members.ToArray();
    for (int i = 0; i < members.Length; i++)
    ((Excel.Range)this.Cells[i + 3, 2]).Value2 = members[i].MemberId.Name;
    foreach (Common.ServiceReference1.Attribute att in members[i].Attributes)
    if (att.Identifier.Name == "ValidDandT")
    att.Value = DateTime.Now;
    c.EntityMembersUpdate(intl, em);
    DisplayEntityMembers(c);
    c.Close();
    Cursor.Current = Cursors.Default;
    private void cbModels_SelectedIndexChanged(object sender, EventArgs e)
    Identifier i = (Identifier)cbModels.SelectedItem;
    if (md != null)
    cbVersions.Items.Clear();
    foreach (Common.ServiceReference1.Version v in md.Versions)
    if (v.Identifier.ModelId.Id == i.Id)
    cbVersions.Items.Add(v.Identifier);
    cbVersions.DisplayMember = "Name";
    private void cbVersions_SelectedIndexChanged(object sender, EventArgs e)
    Identifier iVer = (Identifier)cbVersions.SelectedItem;
    ModelMembersGetCriteria mmgc = new ModelMembersGetCriteria();
    mmgc.Models = new Collection<Identifier>() { new Identifier() { Name = ((Identifier)cbModels.SelectedItem).Name } };
    ModelMembersResultCriteria mmrc = new ModelMembersResultCriteria();
    mmgc.Versions = new Collection<Identifier>() { new Identifier() { Id = iVer.Id } };
    mmrc.IncludeLeafMembers = true;
    cbEntities.Items.Clear();
    cbMembers.Items.Clear();
    Collection<EntityMembers> colEm = c.ModelMembersGet(intl, mmgc, mmrc, out or);
    foreach (EntityMembers em in colEm)
    cbEntities.Items.Add(em.EntityId);
    cbEntities.DisplayMember = "Name";
    private void cbEntities_SelectedIndexChanged(object sender, EventArgs e)
    DisplayEntityAttributesCombo(c);
    DisplayEntityAttributesAndMembersInSheet();
    private void DisplayEntityAttributesAndMembersInSheet()
    EntityMembers em = GetEntityMembers(c);
    Member[] members = em.Members.ToArray();
    ((Excel.Range)this.Cells[2, 2]).Value2 = "MemberName";
    ((Excel.Range)this.Cells[2, 3]).Value2 = "AttributeName";
    ((Excel.Range)this.Cells[2, 4]).Value2 = "AttributeValue";
    if (members.Count() > 0)
    int ii = 0;
    //attributes name on header line
    foreach (Common.ServiceReference1.Attribute att in members[0].Attributes)
    ((Excel.Range)this.Cells[3, ii + 3]).Value2 = att.Identifier.Name.ToString();
    ii++;
    //members Data
    int cptnbAttributes = members[0].Attributes.Count();
    for (int i = 0; i < members.Length; i++)
    for (int j = 0; j < cptnbAttributes - 1; j++)
    ((Excel.Range)this.Cells[i + 4, j + 3]).Value2 = members[i].MemberId.MemberType;
    private void DisplayEntityAttributesCombo(ServiceClient c)
    EntityMembers em = GetEntityMembers(c);
    Member[] members = em.Members.ToArray();
    if (members.Count() > 0)
    cbAttributes.Items.Clear();
    foreach (Common.ServiceReference1.Attribute a in members[0].Attributes)
    cbAttributes.Items.Add(a.Identifier);
    cbAttributes.DisplayMember = "Name";
    cbAttributes.Visible = true;
    private void cbMembers_SelectedIndexChanged(object sender, EventArgs e)
    Identifier idMember = (Identifier)cbMembers.SelectedItem;
    EntityMembers em = GetEntityMembers(c);
    Member[] members = em.Members.ToArray();
    Member m = members.FirstOrDefault(p => p.MemberId.Id == idMember.Id);
    cbAttributes.Items.Clear();
    foreach (Common.ServiceReference1.Attribute att in m.Attributes)
    cbAttributes.Items.Add(att.Identifier);
    cbAttributes.DisplayMember = "Name";
    cbAttributes.Visible = true;
    private void cbAttributes_SelectedIndexChanged(object sender, EventArgs e)
    private void btReverseTran_Click(object sender, EventArgs e)
    using (var c = Common.MDS_WSConnect.CreateMdsProxy("yourdomain", "yourlogin", "yourpassword", mdsEndPoint))
    c.Open();
    UpdateTransaction(c);
    DisplayTransactions(c);
    c.Close();
    private void UpdateTransaction(ServiceClient c)
    string versionName = "VERSION_1";
    if (cbVersions.SelectedItem != null)
    versionName = ((Identifier)cbVersions.SelectedItem).Name;
    TransactionSearchCriteria trSrchCrit = new TransactionSearchCriteria();
    trSrchCrit.ModelId = new Identifier() { Name = ((Identifier)cbModels.SelectedItem).Name };
    //trSrchCrit.EntityId = new Identifier() { Name = ((Identifier)cbEntities.SelectedItem).Name };
    trSrchCrit.EntityId = new Identifier();
    trSrchCrit.VersionId = new Identifier() { Name = versionName };
    //ExportView[] ev = c.ExportViewListGet(new International(), out or);
    EntityMembersInformation emi = new EntityMembersInformation();
    int totalTranCount = 0;
    Collection<Transaction> transactions = new Collection<Transaction>();
    OperationResult or = c.TransactionsGet(intl, trSrchCrit, out totalTranCount, out transactions);
    Collection<ReplacementId> transactionReversed = new Collection<ReplacementId>();
    or = c.TransactionsReverse(intl, new Collection<int>() { transactions.First().Id }, out transactionReversed);
    Xavier Averbouch
    Microsoft Community Contributor
    Avanade , FRANCE
    If a post answers your question, please click "Mark As Answer" on that post and "Vote as Helpful".

  • How to run excel macros using lookout

    Hi,
    I want use Excel macros for generating custom reports.Is it possible to run macros using run object in lookout
    thanks

    Hi,
    I am pretty sure you can activate macros in Excel using the Run object in Lookout. I can think of two ways you can do this:
    1. You can setup your Excel to run macros on startup using the Auto_Activate method. In this case, you will just launch excel with your workbook using the Run object and that should run the macros automatically. No brainer!
    2. To better control as to when the macros are run we can assign in Excel some shortcut keys for their launching. We then would need to simulate these keystrokes to launch our macros. This can be done using the SendKeys method and some scripting, WHS Scripting for instance. See this pos
    t for a scripting example which simulates Alt+Tab keys to bring-to-front an app.
    You will launch the script from the Run object and this in turn launches Excel and then simulates the keys for luanching the appropriate macros. I admit this is kinda involved, but hey it works!
    Hope this helps,
    Khalid

  • How to run Excel Macros using JDBC-ODBC

    Hi,
    I want to run the excel macros in the excel file, after I connected to excel file, using JDBC-ODBC bridge.
    How macros treated here?
    Help needed please..........
    - Ramesh

    How to run Excel Macros using JDBC-ODBCYou don't.
    As my fuzzy understanding goes.....
    Macros (excel, word, etc) run via a "OLE" extension of the script host system.
    So the only way to run them is via the OLE interface. That has nothing to do with ODBC. You can write your own JNI to do that, or you might get lucky and find that someone else has written a java library to do it for you.

Maybe you are looking for

  • We need a teacher tablet package for schools

    Wy doesn't Apple get hip to the needs of educators and capture a piece of the pie to get technology into teachers hands? Apple should create a package that could be advertised to district superintendants and administrators; the package should include

  • How to keep my Photos safe?

    I have been using iPhoto to organize and store ALL my digital photos for the last 2 years. I am thinking of switching to using Aperture 3, but I have some worries. Some people have posted that they have lost pictures due to several different reasons

  • With PPT 2007 when I print my PPT file to Notes view why does the slide portion become an image

    I am trying to print a ppt file using PowerPoint 2007 notes view to PDF with Distiller and create a full text searchable PDF. Everytime I do, the slide portion becomes an image. The only textual portion of the PDF are the page numbers and the actual

  • Mac Mini vs Sony KDL46W3000

    Similar issue to what I've seen with some other users with an interesting twist - TV has HDMI input so I've got a DVI to HDMI cable. Hook up the TV to the Mini and no picture. If I hook up a monitor open up displays and set the mouse on 'detect displ

  • BPC 75NW: Using GetOnlyRange, data is still being submitted

    Hi , I am using an Input Schedule with two EvDREs. Both the EvDREs are supposed to send the data and both are static EvDREs, without any expansion ranges. I don't want data to be sent for some of the portion of the template. I included that area in t