Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#71396
Olá,

Tenho uma planilha onde constam os seguintes dados:

células A1 a L1 - os meses do ano, no formato personalizado de data "mmmm", ou seja: janeiro (01/01/2022), fevereiro (01/02/2022), etc...

células A2 a L2 - valores monetários de vendas em cada mês

Preciso de ajuda para construir um comando VBA que faça o seguinte: ao abrir a planilha, bloquear as células no intervalo A2 a L2 que sejam referentes a meses posteriores ao atual. Ex: se o mês atual é janeiro, quero bloquear as células de valores monetários referentes aos meses de fevereiro em diante (B2 a L2). se o mês atual é junho, quero bloquear as células referentes aos meses de julho em diante (G2 a L2).

Alguém poderia me ajudar nessa demanda por favor?

Desde já agradeço imensamente
#71398
Olá, @alexlounofre .

Experimente:
Código: Selecionar todos
Private Sub Workbook_Open()
 If Month(Date) = 12 Then Exit Sub
 With Sheets("Planilha1")
  .Unprotect
  .[A2:L2].Locked = False
  .Cells(2, Month(Date) + 1).Resize(, 12 - Month(Date)).Locked = True
  .Protect
 End With
End Sub
#71402
Olá osvaldo,
Maravilha, funcionou certinho. Muito obrigado!

Só mais uma dúvida: como faria pra bloquear 2 linhas ou mais, por exemplo: A2 a L6? Tenho que repetir o mesmo código linha por linha ou dá pra complementar o código?
#71404
Olá, @alexlounofre .

Os parâmetros da propriedade Resize são Lin e Col ~~~> Resize(Lin,Col).

Da forma que eu sugeri, o parâmetro Lin foi omitido, e nessa situação ele equivale a 1, ou seja, Rezise( , ...) equivale a Resize(1, ...) que é a própria linha referida em Cells(2, ...) que é a linha 2.

Então, para estender o bloqueio para a linha 3 coloque ~~~> Resize(2, ...)

E para estender o bloqueio até a linha 6 ~~~> Resize(5, ...)
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord