Я изменил названия вашего рабочего листа и рабочей книги. Мне просто не нравятся переменные, имена которых совпадают с именами классов.
Я использовал Path.Combine
, поэтому мне не нужно беспокоиться о том, есть ли обратная коса sh или нет.
Я создал и заполнил список парных чисел, содержащих значения из вашей электронной таблицы.
Я использую построитель строк для создания текста, который необходимо сохранить. A StringBuilder
является изменчивым (изменяемым) в отличие от String. Каждая строка должна быть отброшена, а новая должна быть создана иначе.
Я использовал класс File
в System.IO
для создания и записи файла.
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim filereader = "C:\SomeFolder\"
Dim wbook = xls.Workbooks.Open(Path.Combine(filereader, "excelfilename.xls"))
Dim wsheet As Excel.Worksheet = CType(wbook.Worksheets(1), Excel.Worksheet)
Dim lstDoubles As New List(Of Double) From {
CDbl(wsheet.Range("A1").Value),
CDbl(wsheet.Range("A2").Value),
CDbl(wsheet.Range("A3").Value),
CDbl(wsheet.Range("A4").Value),
CDbl(wsheet.Range("A5").Value)
}
'StringBuilder requires Imports System.Text
Dim sb As New StringBuilder
For Each d In lstDoubles
Dim roundedString = Math.Round(d, 2).ToString
sb.AppendLine(roundedString)
Next
File.WriteAllText(Path.Combine(filereader, "FiletoCopy.txt"), sb.ToString)
MessageBox.Show("Output Generated Sucessfully", "Success", MessageBoxButtons.OK)
End Sub