Добавить строку в конец таблицы, отсортировать новый диапазон таблицы, ввести данные пользователя в первый столбец, скопировать остальные - PullRequest
0 голосов
/ 13 февраля 2019

У меня есть существующая таблица, и когда пользователь вводит имя (TextBox1.Value), мне нужно ввести новую строку в таблицу (моя таблица находится в диапазоне от B10 (заголовок) до F16) в конце иимя, вставленное в первый столбец таблицы, затем преобразуйте таблицу с добавленной строкой в ​​алфавитном порядке и, наконец, скопируйте формулы для оставшейся части столбца из строки выше.

Буду очень признателен за помощь, спасибо!

Пока что то, что у меня есть, работает не очень хорошо ... Вставленные данные появляются не в том месте.

Public Sub InsertRowAndSort()

Dim NewName As String
Dim lPosition As Long
Dim rFundList As Range

NewName = TextBox1.Value

Set rFundList = ThisWorkbook.Sheets("Table").Range("B11:B16") 

On Error Resume Next
lPosition = Application.WorksheetFunction.Match(NewName, rFundList, 1)

On Error GoTo 0 
Rows(lPosition + 1).Insert
ThisWorkbook.Sheets("Table").Range("B" & lPosition + 1).Value = NewName

Unload Me
End Sub

1 Ответ

0 голосов
/ 13 февраля 2019

Вы можете просто работать с этой строкой вместо всего кода:

ThisWorkbook.Sheets("Table").Range("B" & ThisWorkbook.Sheets("Table").Cells(Rows.Count, "B").End(xlUp).row + 1).value = Me.TextBox1.value

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...