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
#67599
Olá, @GENECI .

Cole uma cópia do código abaixo no módulo da planilha (clique com o direito na guia da planilha e escolha Exibir Código).
Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 Dim N1 As Long, N2 As Long, L1 As String, L2 As String, L3 As String
  If Target.Column <> 2 Then Exit Sub
  Randomize
  L1 = Chr(Int((26 * Rnd) + 1) + 64): L2 = Chr(Int((26 * Rnd) + 1) + 64)
  Do Until L1 <> L2
   L2 = Chr(Int((26 * Rnd) + 1) + 64)
  Loop
  L3 = Chr(Int((26 * Rnd) + 1) + 64)
  Do Until L3 <> L1 And L3 <> L2
   L3 = Chr(Int((26 * Rnd) + 1) + 64)
  Loop
  N1 = Int(9 * Rnd): N2 = Int(9 * Rnd)
  Do Until N1 <> N2
   N2 = Int(9 * Rnd)
  Loop
  Target.Value = N1 & N2 & L1 & L2 & L3
End Sub
GENECI agradeceu por isso
#67626
Boa tarde! osvaldomp
Muito obrigado, por atender a minha solicitação.
Não mencionei, porém é bem pertinente, há possibilidade de intercalar letras e números e uma letra em minúscula. Exemplo.
Ab587
8F57b
S8a75
Explicando com outras palavras, um código aleatório, de 5 caracteres embaralhados, entre números letras maiúsculas e minúsculas e sem ordem definida.

Caso não seja possível, uso a opção apresentada.

Grato - Geneci.
#67640
GENECI escreveu: 21 Out 2021 às 14:43 Não mencionei, porém é bem pertinente, :roll: há possibilidade de intercalar letras e números e uma letra em minúscula.
O código que passei faz exatamente o que você escreveu na planilha ~~~> "inserir 5 caracteres aleatórios composto de 2 números 3 letras".

Exemplo.
Ab587
8F57b
S8a75
Esses exemplos que você colocou aí acima não batem com o que você pediu, pois você pediu 2 números (o correto é 2 dígitos) e 3 letras, no entanto os seus exemplos mostram 3 dígitos e 2 letras ;) :?:

Explicando com outras palavras, um código aleatório, de 5 caracteres embaralhados, entre números letras maiúsculas e minúsculas e sem ordem definida.
O código abaixo gera strings com 5 caracteres, formados por 2 dígitos, duas maiúsculas e uma minúscula, em ordem aleatória.
Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 Dim N1 As Long, N2 As Long, L1 As String, L2 As String, L3 As String
  Dim Si As String, Sf As String, k As Long, x As Long, G As String
  If Target.Column <> 2 Then Exit Sub
  Randomize
  L1 = Chr(Int((26 * Rnd) + 1) + 64): L2 = Chr(Int((26 * Rnd) + 1) + 96)
  Do Until L1 <> UCase(L2)
   L2 = Chr(Int((26 * Rnd) + 1) + 96)
  Loop
  L3 = Chr(Int((26 * Rnd) + 1) + 64)
  Do Until L3 <> L1 And L3 <> UCase(L2)
   L3 = Chr(Int((26 * Rnd) + 1) + 64)
  Loop
  N1 = Int(9 * Rnd): N2 = Int(9 * Rnd)
  Do Until N1 <> N2
   N2 = Int(9 * Rnd)
  Loop
  Sf = L1 & "," & N1 & "," & L2 & "," & N2 & "," & L3
   For x = 1 To 5
   k = Int(5 * Rnd) + 1
   If Si = "" Then
    Si = k
   Else
    If InStr(Si, k) = 0 Then
     Si = Si & "," & k
    Else
     Do Until InStr(Si, k) = 0
      k = Int(5 * Rnd) + 1
     Loop
     Si = Si & "," & k
    End If
   End If
  Next x
 For x = 0 To 4
 k = Split(Si, ",")(x)
 G = G & Split(Sf, ",")(k - 1)
 Next x
 Target.Value = G
End Sub
GENECI agradeceu por isso
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