2012-01-04 4 views
1

Мне нужно использовать команду xlsread (и, в конечном итоге, команду xlswrite) в Matlab для импорта/экспорта данных из/в Excel. Тем не менее, мне нужно сделать это , в то время как файл excel открыт. Это возможно? Как это сделать?Matlab xlsread, когда файл Excel открыт

Спасибо,

Аля

ответ

4

xlsread это не волнует, если файл уже открыт или нет. Просто используйте его со стандартным соглашением о вызове.

[numData, txtData, rawData] = xlsread('filename.xls') 

Чтобы использовать xlswrite открытый файл, вам необходимо открыть файл таким образом, что позволяет изменения. Существует два способа сделать это, открыв его только для чтения или используя функцию «share».

Для использования функции «поделиться»

  1. Сначала установите таблицу, чтобы позволить операции записи с нескольких пользователей одновременно. В Office 2007 вы делаете это на ленте «обзор», «обмениваетесь книгой», «допускаете изменения более чем одним пользователем одновременно».

  2. После выполнения xlswrite от Matlab вам необходимо нажать сохранить в открытом файле, чтобы заставить изменения появляться.

Чтобы открыть файл только для чтения

Из Excel, нажмите значок Открыть, выберите файл, и использовать «Открыть только для чтения» выпадающий выбор в диалоговом окне «Открыть» , В этом случае похоже, что вам нужно повторно открыть файл, чтобы отобразить новые данные.

+0

Большое спасибо преследования! Оба варианта работают. Это было очень полезно. –

0

Отличный ответ от @Pursuit. Вы также можете попробовать посмотреть команду actxGetRunningServer.

Смежные вопросы