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
Por CAMILOALVES
Posts
#35964
Boa tarde amigos,
Tenho 01 arquivo com várias planilhas, sendo 01 delas utilizada para cadastro de OS’s (Inserir OS) e uma destinadas a receber os dados de origem dessa inclusão (Registro de OS) como se fosse um banco de dados.
Gostaria de criar um número sequencial no campo Nº OS na planilha (Inserir OS) onde esse número fosse determinado pela sequencia: numeral + ano atual, por exemplo : 0001/2018, 0002/2018, e assim por diante de uma forma que mesmo fechando o arquivo, ao abrí-lo novamente o numero de série continue de onde parou.
Uso o Excel 2010.
Alguém poderia me dar uma luz de como fazer isso?
Desde já agradeço!!!!
Avatar do usuário
Por fcarlosc2018
Posts Avatar
#35966
Boa-tarde CAMILOALVES

O código para "autonumeração" na prática é bem simples, o ideal seria você postar um arquivo-exemplo com dados fictícios para melhor solucionar sua dúvida.
Por CAMILOALVES
Posts
#35979
Bom Dia!
Na Planilha em Anexo:
Gostaria de criar um número sequencial no campo Nº OS na planilha (Inserir OS) onde esse número fosse determinado pela sequencia: numeral + ano atual, por exemplo : 0001/2018, 0002/2018, e assim por diante , de uma forma que mesmo fechando o arquivo, ao abri-lo novamente o numero de série continue de onde parou.
Devendo também checar se NÃO HÁ duplicidade em dados anteriores armazenados na planilha "Registro de OS".
Atenciosamente
Você não está autorizado a ver ou baixar esse anexo.
Por osvaldomp
#35986
Segue uma ideia.

1. para inserir o novo número da OS em C9 cole o código abaixo no módulo da planilha Inserir OS
Código: Selecionar todos
Private Sub Worksheet_Activate()
 Dim LR As Long, OS As String
  With Sheets("Registro de OS")
   LR = .Cells(Rows.Count, 1).End(3).Row
   OS = Format(Left(.Cells(LR, 1), 4) + 1, "0000") & "/" & Year(Date)
  End With
 [C9] = OS
End Sub
2. se você alterar a sequência dos campos ou em Inserir OS ou em Registro de OS aí poderá utilizar o código abaixo no lugar dos atuais Sub lsIncluirOS e Sub lsLimpaMovimento
Código: Selecionar todos
Sub CadastraOS()
 Dim LR As Long
  With Sheets("Registro de OS")
   LR = .Cells(Rows.Count, 1).End(3).Row + 1
   .Cells(LR, 1).Resize(, 5).Value = Application.Transpose([C9:C13].Value)
   .Cells(LR, 6).Resize(, 5).Value = Application.Transpose([E9:E13].Value)
   .Cells(LR, 11).Resize(, 3).Value = Application.Transpose([G9:G11].Value)
  End With
  [C9:C13,E9:E13,G9:G11] = ""
  [C9] = Format(Left(Sheets("Registro de OS").Cells(LR, 1), 4) + 1, "0000") & "/" & Year(Date)
End Sub
Por CAMILOALVES
Posts
#35989
Osvaldo, Boa Tarde
Private Sub Worksheet_Activate()
Dim LR As Long, OS As String
With Sheets("Registro de OS")
LR = .Cells(Rows.Count, 1).End(3).Row
OS = Format(Left(.Cells(LR, 1), 4) + 1, "0000") & "/" & Year(Date)
End With
[C9] = OS
End Sub
Testei e não funcionou, poderia anexar a planilha com suas alterações?
Desde já agradeço
Por osvaldomp
#35990
Camilo, me desculpe. Faltou informar sobre a coluna A da planilha Registro de OS.

1. formate A7 para Texto
2. coloque em A7 ~~~> 0001/2018
3. cole em A8 ~~~> =TEXTO(ESQUERDA(A7;4)+1;"0000")&"/"&ANO(HOJE()) e arraste até A56
Em seguida, se você quiser, poderá substituir as fórmulas pelos seus valores ~~~> selecione A2:A56 / Copiar / Colar Valores

Assim, ao ativar a planilha Inserir OS, o código que passei irá inserir em C9 o número da OS seguinte.
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