В Excel выводится только 26 строк

Страницы: 1
RSS
В Excel выводится только 26 строк
 
Здравствуйте!
Создаю файл .csv

CSV=io.open(getScriptPath().."/Trades.csv","a+");
local Position = CSV:seek("end",0);
if Position==0 then

и далее начинаю через CSV:Write() указывать строки для вывода. Так выходит, что мне надо вывести около 40 строк, которые я и заполняю.
Но вот незадача: когда после запуска скрипта я открываю файл Excel, у меня оказывается 26 первых строк, перечисленных в скрипте.
В чем дело? Как вывести все нужные мне строки?
Я бы хотел именно это сделать именно строками, а не столбцами - так наглядней.
 
Здравствуйте,
К сожалению присланного кода недостаточно для понимания причин.
За перевод строки в файле отвечает параметр "\n", вполне возможно что у Вас он вставляется не там где нужно или не так как нужно.
Проверьте этот момент

CSV:write("\n")
 
CSV:write("Start_Kapital;"..money.."\n");
CSV:write("Itog_Kapital;"..money_new.."\n");
CSV:write("Clear_Dohod;"..dohod.."\n");
CSV:write("Dohod_Po_Dlinnim_Pozitsiyam;"..l_dohod.."\n");
CSV:write("Dohod_Po_Korotkim_Pozitsiyam;"..s_dohod.."\n");
CSV:write("Clear_Dohod,%;"..(((money_new/money)-1)*100).."\n");
CSV:write("Year_Dohod,%;"..(((money_new/money)-1)*100).."\n");
CSV:write("Komissiya_Broker,%;"..(((money_new/money)-1)*100).."\n");

CSV:write("-------------;-------------\n");

CSV:write("Kol-vo sdelok;"..count_L+count_S.."\n");
CSV:write("Kol-vo sdelok Long;"..count_L.."\n");
CSV:write("Kol-vo sdelok Short;"..count_S.."\n");
CSV:write("Srednii dohod na sdelku;"..dohod/(count_L+count_S).."\n");
CSV:write("Srednii dohod na sdelku Long;"..l_dohod/(count_L).."\n");
CSV:write("Srednii dohod na sdelku Short;"..s_dohod/(count_S).."\n");
CSV:write("Srednee kol-vo svechei v sdelke;"..s_dohod/(count_S).."\n");  

CSV:write("-------------;-------------\n");

CSV:write("Pribilnost sdelok;"..(((pribil/money)-1)*100).."\n");
CSV:write("Summ pribil;"..pribil.."\n");
CSV:write("Srednaya pribil na sdelku;"..pribil/count_pribil.."\n");
CSV:write("Kol-vo sdelok s pribilu;"..count_pribil.."\n");
CSV:write("Max pribil za sdelku;"..pribil_max.."\n");
CSV:write("Max sdelok podryad;"..s_dohod/(count_S).."\n");

CSV:write("-------------;-------------\n");

CSV:write("Ubitochnost sdelok;"..(((ubil/money)-1)*100).."\n");
CSV:write("Summ ubitok;"..ubil.."\n");
CSV:write("Srednaya ubil na sdelku;"..ubil/count_ubil.."\n");
CSV:write("Kol-vo sdelok s ubilu;"..count_ubil.."\n");
CSV:write("Max ubil za sdelku;"..ubil_max.."\n");
CSV:write("Max prosadka;"..l_dohod/(count_L).."\n");
CSV:write("Max sdelok podryad;"..s_dohod/(count_S).."\n");

CSV:write("-------------;-------------\n");


CSV:flush();

Вот весь вывод.
В данном случае он выведет вплоть до строки "CSV:write("Summ ubitok;"..ubil.."\n"); " включительно, остальные останутся... в подпространстве.
 
Давайте для начала забудем про Excel, если файл открыть блокнотом, что отобразится?
Далее, если строка "Summ ubitok" действительно последняя, значит дальше код не отработал.
Ищите ошибку по которой это могло произойти. Например ошибка при делении в следующей строке.
В крайнем случае упростите код до минимального (вообще убрав все переменные)
 
Какая-то магия.
Я убрал часть вывода, запустил.
Потом вернул убранную часть вывода (ничего не менял), запустил, он показал полностью все строки, которые я указывал. Хм... Но похоже вопрос решён. Непонятно как, правда...
Страницы: 1
Читают тему
Наверх