когда я сохраняю каждый счет, я получаю все пустые строки в счете
276
Amarendra Kumar
Я создаю базу данных для моего друга. на 2 листах у меня есть список счетов, который вызывает данные из списка инвентаря на основе кода товара (используя Vloolup). Затем у меня есть формула VBA, которая перемещает данные из каждого счета-фактуры в таблицу данных счета-фактуры, которая содержит данные о каждой продаже. Это код, который я использую для переноса данных из каждого счета на лист «Данные счета».
Я включил копию страницы счета-фактуры, чтобы вы могли видеть, откуда тянет мой код
Option Explicit Sub Button2_Click() Dim rng As Range Dim i As Long Dim a As Long Dim rng_dest As Range Application.ScreenUpdating = False 'Check if invoice # is found on sheet "Invoice data" i = 1 Do Until Sheets("Invoice data").Range("A" & i).Value = "" If Sheets("Invoice data").Range("A" & i).Value = Sheets("Invoice").Range("F4").Value Then 'Ask overwrite invoice #? If MsgBox("Overwrite invoice data?", vbYesNo) = vbNo Then Exit Sub Else Exit Do End If End If i = i + 1 Loop i = 1 Set rng_dest = Sheets("Invoice data").Range("G:K") 'Delete rows if invoice # is found Do Until Sheets("Invoice data").Range("A" & i).Value = "" If Sheets("Invoice data").Range("A" & i).Value = Sheets("Invoice").Range("F4").Value Then Sheets("Invoice data").Range("A" & i).EntireRow.Delete i = 1 End If i = i + 1 Loop ' Find first empty row in columns G:K on sheet Invoice data Do Until WorksheetFunction.CountA(rng_dest.Rows(i)) = 0 i = i + 1 Loop 'Copy range B13:I38 on sheet Invoice Set rng = Sheets("Invoice").Range("B13:F32") ' Copy rows containing values to sheet Invoice data For a = 1 To rng.Rows.Count If WorksheetFunction.CountA(rng.Rows(a)) <> 0 Then rng_dest.Rows(i).Value = rng.Rows(a).Value 'Copy Invoice number Sheets("Invoice data").Range("A" & i).Value = Sheets("Invoice").Range("F4").Value 'Copy Date Sheets("Invoice data").Range("B" & i).Value = Sheets("Invoice").Range("F3").Value 'Copy Company name Sheets("Invoice data").Range("C" & i).Value = Sheets("Invoice").Range("C7").Value 'Copy Add Sheets("Invoice data").Range("D" & i).Value = Sheets("Invoice").Range("C8").Value 'Copy PIN Sheets("Invoice data").Range("E" & i).Value = Sheets("Invoice").Range("C9").Value 'Copy Phone Sheets("Invoice data").Range("F" & i).Value = Sheets("Invoice").Range("C10").Value i = i + 1 End If Next a MsgBox ("Invoice saved!") Application.ScreenUpdating = True Sheets("Invoice").Range("F4").Value = _ Sheets("Invoice").Range("F4").Value + 1 End Sub Sub Button1_Click() UserForm1.Show End Sub
Моя проблема в том, что когда я сохраняю каждый счет-фактуру, я получаю также все пустые строки в счете-фактуре:
0 ответов на вопрос
Похожие вопросы
-
2
Конвертировать макрос Excel 4.0 в VBA
-
3
Исправить (сегодня) дату в Excel
-
4
Excel 2007 | Удалить пустые поля из сводных таблиц
-
-
2
Как будет выглядеть макрос Outlook 2007 для автоматизации Специального вставки - неформатированный т...
-
4
Открыть несколько экземпляров Excel без сообщения блокировки PERSONAL.xlsb
-
5
Выделить весь столбец без строки заголовка в макросе Excel
-
1
Восстановить пароль защиты листа в Excel
-
2
Excel VBA: как очистить выделение без активации листа
-
1
добавить текстовую строку слева от всех ячеек столбца в Excel 2002?
-
2
Макрос для открытия гиперссылок Excel