Como enviar dados de célula por célula de um arquivo excel (xslx) usando uma tecla de acesso única toda vez?

0

Estou tentando enviar dados de um arquivo excel para algum outro arquivo usando o comando Loop (leia o conteúdo do arquivo) em autohotkey. Mas isto não está funcionando. Como eu fiz um script que é o seguinte:

FileRead, fileData, D:\data.xlsx
lineIndex := 1

f1::
    Loop, Parse, fileData, 'n
    {

        if (A_Index == lineIndex) {
            SendInput, %A_LoopField%

            lineIndex++
            break
        }
    }
return

No exemplo acima eu fiz F1 uma tecla de atalho. Existe um arquivo data.xlsx na minha unidade D. Agora eu quero que quando eu pressionar a tecla F1 , ela deva enviar os dados (valor) de uma célula apenas de cada vez do arquivo data.xlsx .

Quando eu pressionar novamente a tecla F1 , ele deve enviar os dados da próxima célula do arquivo data.xlsx e assim por diante. Mas não está fazendo isso. No entanto, ele está funcionando perfeitamente com arquivos .txt, ou seja, está enviando dados linha por linha a partir de qualquer arquivo .txt , mas isso não está funcionando com .xlsx arquivos.

    
por user3906491 12.10.2014 / 19:46

1 resposta

1

O FileRead não funciona com arquivos .xlsx , pois eles têm um formato especial. Você precisa exportar seus dados para um arquivo .csv e analisar isso, se possível.

    
por 12.10.2014 / 19:58

Tags