Q
MQL4 の関数データー(算出変数値 や 各種関数値)を EXCEL に転送する為の関数名をお知らせください。 貴、MQL4レファーレンス・リストの、どの関数を使うのか、分かりません。又、EXCEL側の設定に付いてもお願いします。 |
A
中国の人でしょうか? 日本語で上手く伝わるかわかりませんが、 直接Excelにデータ転送するような関数はありません。 一度FileWrite()関数でCSVファイルを生成してから、Excel VBAでCSVファイルを読み込んでみるのは如何でしょう? CSV書き出しのサンプルソースはFileWriteのページを参照して下さい。 CSV生成のmq4ファイルと、作成したExcelファイルを添付します。 |
'--------------------------------------- 'CSVファイルを読み込み、セルに貼り付ける '--------------------------------------- Sub MQL4CsvRead() Dim filehandle As Integer 'ファイルハンドラ Dim rowcount As Integer Dim acount As Integer Dim read_str As String Dim read_array_str() As String '文字列配列 Dim CSV_FileAddress As String Const base_cell As String = "A2" '基点セル位置 Const fileaddres_cell As String = "B1" 'ファイルアドレスのセル位置 'ファイルパスをセルから取得 CSV_FileAddress = Range(fileaddres_cell).Value '2行目~1000行目のセルデータを全削除 Rows("2:1000").Select Selection.ClearContents Range(base_cell).Select 'A2セルを選択 filehandle = FreeFile '未使用番号を取得してファイルハンドラNoに設定 'ファイルオープン(読み取りモード) Open CSV_FileAddress For Input As filehandle rowcount = 0 Do Until EOF(filehandle) 'ファイルの終端までループ Line Input #filehandle, read_str '1行読み込み read_array_str = Split(read_str, ",") '読み込んだ文字列を,で分割して配列に保存 acount = 0 For Each tempitem In read_array_str '配列数分ループ Range(base_cell).Offset(rowcount, acount).Value = tempitem acount = acount + 1 Next tempitem rowcount = rowcount + 1 Loop Close filehandle ' ファイルハンドラ開放 End Sub