Boa noite pessoal (sim, aqui é noite, estou em Portugal
Precisava de uma ajuda em VBA no Excel. De salientar que não percebo quase nada de VBA, fui tirando dicas daquiu e dali e consegui algumas coisas a funcionar
Bom, 1º. Caso:
Não deixar gravar um ficheiro caso algumas celulas estejam em branco.
Fiz este programa:
Private Sub CommandButton1_Click() Dim path As String Dim OF As String Dim REF As String Dim SIM_NAO As String 'CAMINHO DE ACESSO À GRAVAÇÃO DAS FOLHAS DE PRODUÇÃO path = "c:\Folhas_Produção\" OF = Range("J5") REF = Range("O5") SIM_NAO = Range("Q5") ActiveWorkbook.SaveAs FileName:=path & OF & "_" & REF & "_" & SIM_NAO & ".xls", FileFormat:=xlNormal End Sub
'ABAIXO JÁ NÃO ME FUNCIONA. GRAVA UM FICHEIRO MESMO QUE AS CELULAS ESTEJAM VAZIAS
'Impede Salvar Como caso células não sejam preenchidas Cancel = True If IsEmpty(Range("PROD!J5")) Or IsEmpty(Range("PROD!O5")) Or IsEmpty(Range("PROD!A10")) Or IsEmpty(Range("PROD!Q5")) Or IsEmpty(Range("PROD!Z10")) Then Mensagem = MsgBox("OF ou REF ou 1º Rolo OU MAQ. estão vazias! Documento não será gravado.", vbExclamation, "Documento não será salvo") 'Exit Sub 'End If 'End Sub
2º. Caso: Imprimir caso uma celula for diferente de zero
Private Sub Workbook_BeforePrint(Cancel As Boolean) Dim QT_TECIDO As String QT_TECIDO = Range("NOKS_TECIDO!G4") 'IF Range("PROD!Q5") = SIM and 'IF QT_TECIDO <> 0 ' THEN PRINT
Aqui sim, não sei o que fazer. Tenho seguido o forum e já vi que aqui tens expecialistas muito bons mesmo, alguém pode dar uma mão aqui ao Portuga??
Obrigado