커뮤니티
현재가 읽어들이기
2014-11-04 16:10:09
228
글번호 80088
var Data = [];
var Current = [];
function Main_OnStart()
{
Main.MessageLog("현재가, 시가총액 데이터 불러오기");
Start = 0;
for(var i=2; i<=152; i++)
{
Data[i] = Excel.GetData(1, "A"+i);
Current[i] = Data[i].current;
}
for(var i=2; i<=152; i++)
{
Excel.SetData(1,"B"+i,Current[i]);
}
Excel.Save();
Main.MessageLog("현재가, 시가총액 데이터 불러오기 완료");
}
엑셀에서 A줄에 있는 종목의 현재가를 스팟으로 읽어와서 B줄에 순서대로 입력시키고 나서
자동 저장 하게 싶은데 방법이 없을까요???
- 1. 현재가.xlsx (0.01 MB)
답변 1
예스스탁 예스스탁 답변
2014-11-05 10:52:46
안녕하세요
예스스탁입니다.
엑셀에 A열에는 단순 텍스트(종목명)만 있습니다.
해당 텍스트에 .current를 붙여서는 값이 리턴이 되지 않습니다.
종목의 현재가를 알기위해서는 해당 종목의 종목객체가 생성이 되어야 합니다.
(시가총액은 데이터로 제공되고 있지 않습니다)
또한 수식안에서 종목객체를 생성하기 위해서는
종목코드로 지정을 해야 합니다.
종목명으로는 생성할수가 없습니다.
A열의 내용이 종목코드이면 아래와 같이 작성하시면 됩니다.
var Data = [];
var Current = [];
var i = 0, Rcv = 0;
function Main_OnStart()
{
Main.MessageLog("현재가, 시가총액 데이터 불러오기");
Start = 0;
Main.SetTimer(1, 500);//0.5초단위
i = 1;
Rcv = 1;
}
function Main_OnTimer(nEventID)
{
if (nEventID == 1 && i < 10)
{
i = i+1;
Data[i-1] = Excel.GetData(1, "A"+i);
Main.ReqMarketData(Data[i-1], 0,0);
}
}
function Main_OnRcvMarketData(MarketData)
{
Rcv = Rcv +1;
Current[Rcv-1] = MarketData.current;
Excel.SetData(1,"B"+Rcv,Current[Rcv-1]);
}
예스스팟 문의는 예스스팟Q&A에 남겨주시기 바랍니다.
이후에는 해당 게시판으로 이동이 됩니다.
즐거운 하루되세요
> 김현석 님이 쓴 글입니다.
> 제목 : 현재가 읽어들이기
> var Data = [];
var Current = [];
function Main_OnStart()
{
Main.MessageLog("현재가, 시가총액 데이터 불러오기");
Start = 0;
for(var i=2; i<=152; i++)
{
Data[i] = Excel.GetData(1, "A"+i);
Current[i] = Data[i].current;
}
for(var i=2; i<=152; i++)
{
Excel.SetData(1,"B"+i,Current[i]);
}
Excel.Save();
Main.MessageLog("현재가, 시가총액 데이터 불러오기 완료");
}
엑셀에서 A줄에 있는 종목의 현재가를 스팟으로 읽어와서 B줄에 순서대로 입력시키고 나서
자동 저장 하게 싶은데 방법이 없을까요???
다음글
이전글