Excel COM Server, create Autofilter

14 次查看(过去 30 天)
Hi, I'm writing a script starting an Excel COM-Server and inserting some data into a sheet. This is works fine but in addition I'm searching for a command to create an Autofilter for a selected Row.
Does anyone know how I can achieve this? I'm searching for a function reference as I'm not very familiar with COM/ActiveX etc. (I also want to fix my window on a certain cell...)
Any help is welcome :)

采纳的回答

Friedrich
Friedrich 2011-8-25
Hi,
A good way to get the function and command you need it to open Excel and let EXCEL record a macro for you. Simply click on start recording macro, do manually what you like to do in EXCEL and hit stop recording. After recording is done you can look at the VB code which gives you all needed functions and commands.

更多回答(2 个)

Daniel
Daniel 2011-8-25
Some more example code:
e = actxserver ('Excel.Application');
e.Visible = 1;
%eWorkbook = e.Workbooks;
e.Workbooks.Add;
sheet1=e.Worksheets.get('Item', 'Sheet1');
range1 = get(sheet1,'Range','A1:EM671');
range1.Value = arr;
range1 = get(sheet1,'Range','C4');
range1.Select;
e.ActiveWindow.FreezePanes = 1;
range1 = get(sheet1,'Range','3:3');
range1.Select;range1.AutoFilter

Daniel
Daniel 2011-8-25
Thank you very much! This helps me a lot the code is
Rows("3:3").Select
Selection.autofilter

类别

Help CenterFile Exchange 中查找有关 Use COM Objects in MATLAB 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by