Из Exel в МТ4

 

Может кто  знает, подскажите как прочитать данные из экселовского файла в МТ?

если можно с примером.

 

Из xls - если не знать формат (а он закрыт) - никак.

Из csv - обычным Fileopen()+FileReadString().

csv из xls можно сделать с помощью макроса на VBA (в Excel-е).

 

проще сохранить как текстовый файл с разделителями табуляцией и без макросов можно обойтись

 
Integer:

проще сохранить как текстовый файл с разделителями табуляцией и без макросов можно обойтись

Ну, если ручками, то по-разному можно ;)

На сколько я понял, интересует автоматизация.

 

Да задача в общем то простая - прочитать из файла значение и присвоить его переменной.

и нужно сделать 2 варианта - читать одно о тоже значение регулярно,

- и читать из файла архив котировок - регулярно обновляемый.

 

Если такая простая сделайте и покажите всем, а то люди который день, неделю, пытаются ('Доступ к MySQL') и не получается. Доступ к эксель выполняется также как к базе данных. Непосредственно к книгам эксель через ODBCJT32.dll - удачи!

 
Integer:

Если такая простая сделайте и покажите всем, а то люди который день, неделю, пытаются ('Доступ к MySQL') и не получается. Доступ к эксель выполняется также как к базе данных. Непосредственно к книгам эксель через ODBCJT32.dll - удачи!

Ну почему же не получается, я жу выкладывал на этом форуме полный алгоритм рабоыт с MySQL, надо просто поискать. Работает замечательно.
 
kvn:

Да задача в общем то простая - прочитать из файла значение и присвоить его переменной.

и нужно сделать 2 варианта - читать одно о тоже значение регулярно,

- и читать из файла архив котировок - регулярно обновляемый.

Я уже предложил рабочий вариант. Макрос на VBA + эксперт/скрипт на MQL4.
 

Всё оказыватся не так уж и сложно


//+------------------------------------------------------------------+
//|                                                        Proba.mq4 |
//|                      Copyright © 2008, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"
 
#property indicator_chart_window
//---- input parameters
extern string    Proba="2.csv";
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
 
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//----
      int handle,sst=1;
     double  NameCena;
     string NameF ,NameTi,NameFT;
      bool h1;
      
   while(sst>0)
                 {
   handle=FileOpen(Proba,FILE_CSV|FILE_READ,';');
 //  Comment ("Файл ",Proba,"открыт");
   if(handle>=0)
    {
     NameF=FileReadString(handle);           // Читается наименование бумаги
     NameTi=FileReadString(handle);          // Читается время последней котировки
     NameCena=FileReadNumber(handle);        // Читается цена последней котировки   
     NameFT=FileReadString(handle);          // Читается наименование 
     
     Alert(NameF," ",NameTi," ",NameCena," ",NameFT);
       if(FileIsEnding(h1))
       {
     FileClose(h1);
     return(false);
     sst=0;
       }
    }
               }
     FileClose(handle);   
 
  //fComment(Proba);
//----
   return(0);
  }
//+------------------------------------------------------------------+
Замечания: файлы могут открываться только в папке каталог_терминала\experts\files (каталог_терминала\tester\files в случае тестирования эксперта) или ее подпапках.

формат исходного файла:

GMM8;17:46:30;63252;GMKR
GZM8;17:46:41;29715;GAZR
LKM8;17:46:43;19404;LKOH





 
kvn:

Всё оказыватся не так уж и сложно

Конечно, когда разговор о, одном, а оказывается, что нужно совсем другое. scv это не экселевский файл. Экселевский файл - xls
 

Начинать надо с простейшего, впринцепе для использования большой разницы между xls и csv нет.

но пробуем ковырять и xls.

хотелось бы уз нать мнение спецов о вышеазаложенном, непойму почему конец строки обрабатывается как конец файла?

Причина обращения: