Добрый день.
Пытаюсь реализовать скрипт для экспорта данных в Эксель.
При компиляции выдает ошибку:
Не удалось найти имя типа или пространства имен "Worksheet" и "Cell"
Какую библиотеку сборок надо добавить, чтобы устранить эту ошибку?
Добрый день.
Пытаюсь реализовать скрипт для экспорта данных в Эксель.
При компиляции выдает ошибку:
Не удалось найти имя типа или пространства имен "Worksheet" и "Cell"
Какую библиотеку сборок надо добавить, чтобы устранить эту ошибку?
https://docs.microsoft.com/ru-ru/dot...view=excel-pia
Пространство имен:
Microsoft.Office.Interop.Excel
Спасибо.
Хорошо.
Установил библиотеку Microsoft.Office.Interop.Excel.dll в папку C:\Program Files (x86)\MPSSoft\MasterSCADA.
Добавил сборку во вкладке настойки программы МастерСкада.
Каким образом можно открыть файл Excel с помощью скрипта?
При попытке компиляции кода
using System;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using FB;
using FB.FBAttributes;
using System.Linq;
using System.IO;
using System.IO.Compression;
using System.Windows.Forms;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Microsoft.Office.Interop.Excel;
using System.Text;
using System.Configuration;
using MasterSCADALib;
using System.Threading;
using InSAT.Library;
using InSAT.Library.Interop;
using MasterSCADA.Common.PropPage;
using Microsoft.Office.Tools.Excel;
using System.Diagnostics;
[FBRetain]
public partial class ФБ : ScriptBase
{
public override void Execute()
{
Workbooks.Open(@"C:\Excel.xlsx");
}
}
на строке Workbooks.Open(@"C:\Excel.xlsx"); выдает ошибку:
(CS0120) Для нестатического поля, метода или свойства "Microsoft.Office.Interop.Excel.Workbooks.Open(str ing, object, object, object, object, object, object, object, object, object, object, object, object, object, object)" требуется ссылка на объект
Воспользуйтесь поиском - примеров в интернете много:
https://translated.turbopages.org/pr...forum=exceldev
И сразу хотим отметить, что у объекта со скриптом следует поставить флаг "Собственный цикл объекта" - чтобы выделить его в отдельный поток.
Спасибо.
Добрый день.
Есть указанный ниже код для создания файла в заданной папке. В программе Visual Studio он отрабатывает. В МастерСкада этот код компилируется, но файл не создает. Почему?
Запуск кода в Мастерскаде проичходит по кнопке на мнемосхеме, при периодическом опросе каждый такт также ничего не происходит. Прошу помочь.
using System;
using System.IO;
using System.Text;
class Test
{
public static void Main()
{
string path = @"C:\MyTest.txt";
try
{
// Create the file, or overwrite if the file exists.
using (FileStream fs = File.Create(path))
{
byte[] info = new UTF8Encoding(true).GetBytes("Этот текст находится внутри файла");
// Add some information to the file.
fs.Write(info, 0, info.Length);
}
// Open the stream and read it back.
using (StreamReader sr = File.OpenText(path))
{
string s = "";
while ((s = sr.ReadLine()) != null)
{
Console.WriteLine(s);
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
Вы прямо вот так и написали?
Так не будет работать. Посмотрите как работать со скриптами в MasterSCADA
https://stepik.org/course/104810/
Спасибо.