quando eu salvo cada fatura eu recebo todas as linhas em branco na fatura aparecendo também

0

Estou criando um banco de dados para um amigo meu. em 2 folhas, então eu tenho uma lista de faturas que chama dados da lista de inventário com base em um código de item (usando Vloolup). Então eu tenho uma fórmula de VBA que move os dados de cada fatura para uma folha de dados de fatura que contém os dados de cada venda. Este é o código que estou usando para transferir os dados de cada fatura para a planilha "Invoice dataq".

Incluí uma cópia da página da fatura para que você possa ver onde meu código está sendo extraído

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

Meu problema é que, quando salvo cada fatura, todas as linhas em branco da fatura também são exibidas:

    
por Amarendra Kumar 06.08.2018 / 13:54

0 respostas

Tags