- Este tópico contém 3 respostas, 2 utilizadores e foi actualizado pela última vez há 14 anos, 1 mês por
Albino.
-
AutorArtigos
-
-
24 de Março de 2012 às 3:45 #1057
Albino
Participanteboas.
aguem me pode facultar o codigo vba paar utilizar num ficheiro onde pretendo ser avisado se determinadas celulas não estão preenchidas?
as mesmas celulas não estão seguidas nem coluna nem em linha, portanto são algumas dentro da range b2:z16tentei algo parecido com isto mas não deu
if range(“e3,e5:h5,e9:f9,e7:f7,j11,j13:k13,q13:s13,x13:y13″)=”” then
msgbox “É favor preencher as celulas em falta”, vbinformation, “atenção”exit sub
end if
obrigado -
24 de Março de 2012 às 18:35 #1837
jorgerod
Administradorboas, albino,
experimenta, adaptando:
sub myround()
dim c as range
for each c in worksheets(“folha1”).range(“b2:z16”).cells ‘ em que “folha1” será o nome da tua folha, claro…
if c.value = “” then
msgbox “É favor preencher a celula em falta:” & ” ” & c.address, vbinformation, “atenção!!!”
end ifnext
end sub
diz qq coisa, ok?
-
25 de Março de 2012 às 2:28 #1838
Albino
Participanteolá jorgerod
como sempre a coisa funcionou, no entanto fiz uma pequena adaptação, uma vez que o meu interesse era só verificar algumas celulas e não todas.
coloquei também a indicação para terminar o sub caso houvesse celulas em branco.
ficou assim:private sub commandbutton1_click()
‘verificar preenchimento
dim c as range
for each c in worksheets(“folha1”).range(“e3,e5,e9,j11,j13,q13,x13”).cells ‘modifiquei a range das celulas que me interessava verificar
if c.value = “” then
msgbox “É favor preencher a celula em falta:” & ” ” & c.address, vbinformation, “atenção!!!”exit sub ‘acrescentei aqui
end ifnext
‘copiar para folha2
sheets(“folha1”).range(“ad3:as3”).copy
sheets(“folha2”).range(“a1048576”).end(xlup).offset(1).pastespecial xlpastevaluesapplication.cutcopymode = false
sheets(“folha1”).select‘apagar entradas
range(“e3,e5:h5,e9:f9,e7:f7,e11,j11,j13:k13,q13:s13,x13:y13”).select
range(“e3”).activate
selection.clearcontentsend sub
ps: já agora será que se poderá alterar o codigo no onde tem instruções para copiar e colar na folha2, onde diz … [.range(“a1048576”)…], segundo o que me parece faz a verificação até á celula a1048576.
obrigado
-
25 de Março de 2012 às 2:48 #1058
jorgerod
Administradorexperimenta (não testei):
dim ultimalinha as long
ultimalinha = sheets(“folha2”).range(“a” & rows.count).end(xlup).row
sheets(“folha2”).range(“a” & ultimalinha).offset(1).pastespecial xlpastevalues
fica bem.
-
-
AutorArtigos
- Tem de iniciar sessão para responder a este tópico.
EXCELer Tudo sobre EXCEL em Português