'How to upload multiple files using SendKeys Selenium

I have an element with following HTML:

<input type="file" name="upload" value="[]" id="upload1" class="upload">

To the best of my understanding its value is an array/list and it's supposed to store uploaded files paths (multiple files are allowed).

I use following code to upload ONE file:

.FindElementById("upload1").SendKeys ("C:\file1.txt") 

and it works just fine. However, i need to upload multiple files but I do not get how to populate the array with multiple filepaths using SendKeys.

I use vba to automated data entry from within excel.



Solution 1:[1]

To upload multiple files you can construct the character string adding all the absolute path of the files seperated by \n as follows:

.FindElementById("upload1").SendKeys("C:/TextFile1.txt \n C:/TextFile2.txt \n C:/TextFile3.txt");

References

You can find a couple of relevant detailed discussions in:

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1