日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

matlab 表格控件,[转载]matlab读取excel数据并显示在excel(activex控件)中

發布時間:2025/3/21 循环神经网络 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab 表格控件,[转载]matlab读取excel数据并显示在excel(activex控件)中 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

figure;

spreadsheet = actxcontrol('OWC11.Spreadsheet.11',[0 0 560

420]);

M = {'abc', 123; 12.17, logical(1)};

FillGrid(spreadsheet,M); %自定義的spreadsheet數據填充函數

FillGrid函數的內容如下:

function

FillGrid(Spreadsheet1,M,DoPaste,DoWaitbar,MinR,MinC,MaxR,MaxC,AsStr)

TRUE = 1;

FALSE = 0;

TEST = TRUE;

if nargin<4 DoPaste = TRUE; end;

if nargin<5 DoWaitbar = TRUE; end;

if nargin<6 MinR = 0; end;

if nargin<7 MinC = 0; end;

if nargin<8 MaxR = 9e99; end;

if nargin<9 MaxC = 9e99; end;

if nargin<10 AsStr=0; end;

% USE AN ENUMERATED TYPE WORKAROUND

ClassEnumType = {'cell','char','logical','numeric'};

% FIND THE ACTIVE SHEET

ActSheet = get(Spreadsheet1,'ActiveSheet');

% CLEAR CONTENTS

ActSheet.Cells.ClearContents;

% FIND THE ACTIVE CELL, ROW AND COLUMN

% THIS IS NOT NECESSARY, BUT IT IS DONE FOR DEMONSTRATION

ActCell = get(Spreadsheet1,'ActiveCell');

ActCellRow = 1;%get(ActCell,'Row');

ActCellColumn = 1;%get(ActCell,'Column');

% if DoWaitbar h = waitbar(0,'Please wait...'); end;

% if DoWaitbar h = workbar(0,'請稍等...'); end;

[L,W] = size(M);

MinR = max(MinR,1);

MinC = max(MinC,1);

MaxR = min(L,MaxR);

MaxC = min(W,MaxC);

DoPaste=0;

if DoPaste

for i=1:10

for j=1:10

if ~isstr(M{i,j})

if M{i,j} == floor(M{i,j})

M2{i,j}=sprintf('%d',M{i,j});

else

M2{i,j}=sprintf('%f',M{i,j});

end;

end;

end;

end;

clipboard('copy',M2);

ActCellRow=1;

ActCellColumn=1;

XLfmt = nn2an(ActCellRow,ActCellColumn);

Select(Range(ActSheet,XLfmt));

Spreadsheet1.ActiveCell.Paste

else

if DoWaitbar MaxRC = MaxR.*MaxC; end;

for r = MinR:MaxR

for c = MinC:MaxC

if DoWaitbar

i = c+W.*(r-1);

% waitbar(i./MaxRC,h,sprintf( ...

% 'Posting %d of %d (%d%% done)', ...

% i,MaxRC,floor(100.*i./MaxRC)));

workbar(i./MaxRC,'數據輸出中 ......')

end;

% Select current cell

XLfmt = nn2an(ActCellRow+r-1,ActCellColumn+c-1);

Select(Range(ActSheet,XLfmt));

% Assign value

ActCell = get(Spreadsheet1,'ActiveCell');

if putcellvalue(ActCell,M(r,c),AsStr) break; end;

% Re-select starting cell

XLfmt = nn2an(ActCellRow,ActCellColumn);

Select(Range(ActSheet,XLfmt));

end;

end;

end;

if DoWaitbar close(h); end;

function DoBreak = putcellvalue(ActCell,M,AsStr)

% PUTCELLVALUE puts a value in an active cell

% PUTCELLVALUE(ACTCELL,M) puts M in ACTCELL

% PUTCELLVALUE(ACTCELL,M,ASSTR) converts M to a string before

putting

% it if ASSTR = 1, leaves it as is if ASSTR = 0 (default)

%

% PUTCELLVALUE handles all classes and is used by FILLGRID.

%

% IT'S NOT FANCY, BUT IT WORKS

%

% See also Graph_and_Table, QuestDlgWithGrid,

SearchAndReplaceMany,

% SpreadSheet, DatabaseEditingTool, DuplicateFileFinder,

% PutCellValue, nn2an, FillGrid

%

% Keywords: grid spreadsheet ActiveX Active-X Active X GUI

Table

% graph_and_table plot graph table grid object flexgrid

% msflexgrid ocx tabular

% Michael Robbins

% robbins@bloomberg.net

% michaelrobbins1@yahoo.com

if nargin<3 AsStr=0; end;

if AsStr prefix = ''; else prefix = ''''; end;

DoBreak=0;

switch class(M)

case 'cell', % DE-CELLIZE

if prod(size(M)) > 1

errordlg('bad cell');

else

putcellvalue(ActCell,M{:},AsStr);

end;

case 'char', % POST (DATES WILL POST NUMERICLY UNLESS

AsStr==1

set(ActCell,'Value',[prefix M]); DoBreak=1;

case 'logical', % LOGICAL -> INT

putcellvalue(ActCell,int32(M),AsStr);

otherwise

if isnumeric(M)

if AsStr % # -> STRING

if isinteger(M) fstr='%d'; else fstr='%f'; end;

putcellvalue(ActCell,sprintf(fstr,M),AsStr);

else % POST

set(ActCell,'Value',M);

end;

else

errordlg('bad class');

end;

end;

function cr = nn2an(r,c)

% Thanks Brett Shoelson, via CSSM

t = [floor((c - 1)/26) + 64 rem(c - 1, 26) + 65];

if(t(1)<65), t(1) = []; end

cr = [char(t) num2str(r)];

總結

以上是生活随笔為你收集整理的matlab 表格控件,[转载]matlab读取excel数据并显示在excel(activex控件)中的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。