Как бы я увеличил номер объекта в конце?
- Привет!
Я сохранил имена текстовых полей по умолчанию до TextBox30. Просто для некоторого пояснения, строка E моего документа excel иногда имеет десятичную дробь, которую я проверяю, если она содержит. Если значение E содержит десятичную дробь, я записываю переменную F рядом с ней в другое текстовое поле, поскольку они мне нужны вместе. Проблема как есть, она перезаписывается, как вы и ожидали.
По мере того как циклы продолжаются, мне нужно настроить имена объектов текстового поля, чтобы увеличить их на 2, чтобы следующие переменные в цикле переходили в другой набор текстовых полей.
Затем эти значения вставляются в базу данных, которая работает правильно. Единственная причина, по которой он должен сначала войти сюда и в текстовые поля, - это то, что пользователь может дважды проверить все, прежде чем вставлять в базу данных. Прямо сейчас данные вводятся вручную в MS GP, так что таким образом он будет вставлять прямые и не придется беспокоиться о ручном вводе.
Вот изображение всех текстовых полей: Скриншот - 7776e19927e097560efbc1c3e3e5aa4e - Gyazo[^]
Я отметил ниже черточками, где это происходит. Вот как это будет выглядеть, когда цикл продолжается.
Поле textbox2
Поля textbox1
Как только все выстроится и цикл запустится он преобразуется в
Textbox4
Textbox3 и
Снова
Textbox6
textbox5
и так до тех пор, пока петля не закончится...
Do Until exRow = 200 perChe = worksheet.Range("E" & exRow).Value If perChe Is Nothing Then 'do nothing Else If perChe.Contains(".") Then perChe = perChe * 100 Dim vOut As Double = Convert.ToDouble(perChe) --------- TextBox2 .Text = vOut --------- TextBox1.Text = worksheet.Range("F" & exRow).Value Else 'do nothing End If End If tbEven = tbEven + 2 tbOdd = tbOdd + 2 exRow = exRow + 1 Loop
Что я уже пробовал:
Единственная идея, которая у меня была, состояла в том, чтобы автоматически увеличивать после заполнения текстовых полей, чтобы это выглядело так. Но это не работает.
tbEven = 2 tbOdd = 1 Loop TextBox & tbEven & .Text = vOut TextBox & tbOdd & .Text = worksheet.Range("F" & exRow).Value tbEven = tbEven + 2 tbOdd = tbOdd + 2 Loop