Ajuda com VBA
Enviado: 16 Ago 2019 às 15:39
Pessoal, boa tarde.
Estou utilizando um código VBA para salvar dados de uma pasta de trabalho em outra (que uso para banco de dados), o código está funcionando bem, mas percebi um problema, ele não está salvando no lugar correto(que está especificado no código) ele acaba salvando na última aba em que estive na planilha Base(banco de dados citado). Podem revisar meu código e ver se está correto?
Atenciosamente.
Private Sub Lançamento_medições()
Application.ScreenUpdating = False
Dim WP As Workbook 'Pasta atual
Dim WS As Workbook 'Base
Dim WSSheet As Worksheet 'Planilha destino
Dim WPSheet As Worksheet 'Planilha Atual
Dim rngWP As Range 'região com dados
Dim resultado As VbMsgBoxResult 'Msg box
resultado = MsgBox("Tem certeza que deseja prosseguir com esta ação?", vbYesNo, "Tomando uma decisão")
If resultado = vbNo Then
MsgBox "Medições SCDE NÃO FORAM cadastradas"
Exit Sub
End If
Set WP = ActiveWorkbook
Set WPSheet = WP.Sheets("Lançamento de medições SCDE")
WPSheet.Select
Range("LanMedicoes").Select
Selection.Copy
Application.CutCopyMode = False
Selection.Copy
Set WS = Workbooks.Open("Y:\Diego Matos\Base.xlsx")
Set WSSheet = WS.Sheets("Base-Medicoes-SCDE")
Range("a2:g2").Select
Do
If ActiveCell <> "" Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until ActiveCell = ""
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.DisplayAlerts = False
WS.Close savechanges:=True
Application.DisplayAlerts = True
WP.Activate
WP.Sheets("Lançamento de medições SCDE").Select
WPSheet.Range("A1").Select
MsgBox "Medições SCDE cadastradas com sucesso", vbOKOnly
Application.ScreenUpdating = True
ActiveWorkbook.RefreshAll
MsgBox ("A planilha será atualizada")
End Sub
Estou utilizando um código VBA para salvar dados de uma pasta de trabalho em outra (que uso para banco de dados), o código está funcionando bem, mas percebi um problema, ele não está salvando no lugar correto(que está especificado no código) ele acaba salvando na última aba em que estive na planilha Base(banco de dados citado). Podem revisar meu código e ver se está correto?
Atenciosamente.
Private Sub Lançamento_medições()
Application.ScreenUpdating = False
Dim WP As Workbook 'Pasta atual
Dim WS As Workbook 'Base
Dim WSSheet As Worksheet 'Planilha destino
Dim WPSheet As Worksheet 'Planilha Atual
Dim rngWP As Range 'região com dados
Dim resultado As VbMsgBoxResult 'Msg box
resultado = MsgBox("Tem certeza que deseja prosseguir com esta ação?", vbYesNo, "Tomando uma decisão")
If resultado = vbNo Then
MsgBox "Medições SCDE NÃO FORAM cadastradas"
Exit Sub
End If
Set WP = ActiveWorkbook
Set WPSheet = WP.Sheets("Lançamento de medições SCDE")
WPSheet.Select
Range("LanMedicoes").Select
Selection.Copy
Application.CutCopyMode = False
Selection.Copy
Set WS = Workbooks.Open("Y:\Diego Matos\Base.xlsx")
Set WSSheet = WS.Sheets("Base-Medicoes-SCDE")
Range("a2:g2").Select
Do
If ActiveCell <> "" Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until ActiveCell = ""
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.DisplayAlerts = False
WS.Close savechanges:=True
Application.DisplayAlerts = True
WP.Activate
WP.Sheets("Lançamento de medições SCDE").Select
WPSheet.Range("A1").Select
MsgBox "Medições SCDE cadastradas com sucesso", vbOKOnly
Application.ScreenUpdating = True
ActiveWorkbook.RefreshAll
MsgBox ("A planilha será atualizada")
End Sub