Ir ao conteúdo

OreiaG

Membro Pleno
  • Posts

    390
  • Cadastrado em

Tudo que OreiaG postou

  1. Anexe o arquivo Excel (imagens não servem). Coloque dados na planilha de origem e dados obtidos ao executar o código na planilha destino. Informe qual o resultado desejado na célula B12. Lembrando que arquivos com macros precisam ser compactados antes de anexar.
  2. Sub ExtraiTexto() Dim r As Range For Each r In Range("R5:R" & Cells(Rows.Count, "R").End(3).Row).SpecialCells(2, 2) r.Offset(, 8).Value = Evaluate("LEFT(" & r.Address & ",SEARCH("" ""," & r.Address & ")-1)&"" ""&MID(" & r.Address & ",SEARCH("" ""," & r.Address & ")+4,7)") Next r End Sub
  3. Segue outra solução, não inclui o sinal "+" no final. =SE(R5="";"";ESQUERDA(R5;LOCALIZAR(" ";R5)-1)&" "&EXT.TEXTO(R5;LOCALIZAR(" ";R5)+4;6))
  4. Sim, a fórmula que passei conta os repetidos uma única vez. Se a sua versão do Excel for inferior a 2019, então experimente finalizar a fórmula com Ctrl+Shift+Enter, e não simplesmente com Enter, pois é fórmula matricial.
  5. Veja se esta fórmula lhe atende. Em D2 coloque somente NF e em D3 coloque somente REC. Cole uma cópia da fórmula abaixo em E2 e arraste até E3. =SOMA(--(FREQÜÊNCIA(SE(A$2:A$11=D2;B$2:B$11);B$2:B$11)>0))
  6. Segue o arquivo com mais essa combinação. COMBIN RESULT 4 JOGOS FUTEBOL V2.7z
  7. Anexo o arquivo que faz as 8 combinações solicitadas. COMBIN RESULT 4 JOGOS FUTEBOL V2.zip
  8. Experimente o código abaixo no lugar do anterior. A foto será inserida diretamente na planilha RESUME ao selecionar o nome em E9. Se não houver foto será inserida a mensagem em F9. obs. 1. dependendo do tamanho das fotos armazenadas na sua máquina talvez você precise alterar o tamanho da cópia inserida na planilha. Para alterar mude na linha abaixo o valor de 100, para mais ou para menos, até acertar. Essa alteração será feita apenas uma vez, desde que todas as fotos armazenadas sejam de tamanhos iguais. Se você não conseguir, então anexe o arquivo com uma foto colada pelo código. Não precisa ser a foto real da pessoa, mas deve ter tamanho igual ao das fotos armazenadas. False, True, r.Left + 20, r.Top, 100, -1) >> altere o valor 100 para mais ou para menos até acertar o tamanho da foto colada na planilha 2. na linha abaixo altere o nome da Pasta que contém as fotos, se necessário sPath = "C:\Fotos\" & [E9] & ".jpg" Private Sub Worksheet_Change(ByVal Target As Range) Dim k As Long, m As Long, x As Long, shp As Shape Dim r As Range, sPath As String If Target.Address <> "$E$9" Then Exit Sub Range("F9,E10:E11,E18:E54,G8:G11,H18:I54,L18:M54,P18:Q54").Value = "" For Each shp In ActiveSheet.Shapes If shp.Name Like "Picture*" And shp.Top = [F7].Top Then shp.Delete Next shp If Target.Value = "" Then Exit Sub With Sheets("ALL CREW CERTIFICATE LIST") k = .Range("G9:G" & .Cells(Rows.Count, "G").End(3).Row).Find([E9]).Row [E10] = .Cells(k, "F"): [E11] = .Cells(k, "H") [G8].Resize(4).Value = Application.Transpose(.Cells(k, "B").Resize(, 4).Value) For m = 9 To 45 If .Cells(k, m) <> "NA" Then If .Cells(k, m) = "M" Then x = 5 Else Select Case .Cells(k, m).DisplayFormat.Interior.ColorIndex Case 3: x = 8 Case 14: x = 16 Case 44: x = 12 End Select End If Cells(18 + Application.CountA(Range(Cells(18, x), Cells(53, x))), x) = .Cells(7, m) If x <> 5 Then Cells(18 + Application.CountA(Range(Cells(18, x + 1), Cells(53, x + 1))), x + 1) = .Cells(k, m) End If Next m End With Set r = [F7] sPath = "C:\Fotos\" & [E9] & ".jpg" If Len(Dir(sPath)) <> 0 Then Set shp = ActiveSheet.Shapes.AddPicture(sPath, _ False, True, r.Left + 20, r.Top, 100, -1) shp.Height = 100 Else: [F9] = "FOTO NÃO ENCONTRADA" End If End Sub
  9. @Alex Sapulla Considerei que as respostas que solicitei no post #12 são essas abaixo. origem dos dados >>> ALL CREW, colunas B:E destino dos dados >>> RESUME, G8:G11 Substitua o código atual por esse abaixo que já contém as alterações de origem/destino acima. Private Sub Worksheet_Change(ByVal Target As Range) Dim k As Long, m As Long, x As Long If Target.Address <> "$E$9" Then Exit Sub Range("E10:E11,E18:E54,G8:G11,H18:I54,L18:M54,P18:Q54").Value = "" If Target.Value = "" Then Exit Sub With Sheets("ALL CREW CERTIFICATE LIST") k = .Range("G9:G" & .Cells(Rows.Count, "G").End(3).Row).Find([E9]).Row [E10] = .Cells(k, "F"): [E11] = .Cells(k, "H") [G8].Resize(4).Value = Application.Transpose(.Cells(k, "B").Resize(, 4).Value) For m = 9 To 45 If .Cells(k, m) <> "NA" Then If .Cells(k, m) = "M" Then x = 5 Else Select Case .Cells(k, m).DisplayFormat.Interior.ColorIndex Case 3: x = 8 Case 14: x = 16 Case 44: x = 12 End Select End If Cells(18 + Application.CountA(Range(Cells(18, x), Cells(53, x))), x) = .Cells(7, m) If x <> 5 Then Cells(18 + Application.CountA(Range(Cells(18, x + 1), Cells(53, x + 1))), x + 1) = .Cells(k, m) End If Next m End With End Sub
  10. É recomendável sempre anexar o arquivo, pois imagens não refletem dados reais.
  11. A fórmula abaixo funciona para o padrão de dados da coluna E da imagem que você postou. =C3+EXT.TEXTO(E3;3;1)
  12. "...ATUALIZASSE AUTOMATICAMENTE AS FUNCOES ( S - SEAFEARER, FF- FIREFIGHTER e etc)... Informe: S - SEAFEARER 1. em qual célula de qual planilha você quer que esse dado seja colocado? 2. em qual coluna de qual planilha será buscado esse dado? FF- FIREFIGHTER 1. em qual célula de qual planilha você quer que esse dado seja colocado? 2. em qual coluna de qual planilha será buscado esse dado? etc 1. explique o que você quer dizer com etc.
  13. À distância eu não consigo imaginar alguma solução pois a minha Bola de Cristal está emprestada, então precisamos ver o seu arquivo Excel. Imagens não ajudam. Anexe o seu arquivo com TODAS AS MACROS existentes nele, incluindo as que você adicionou, e descreva na própria planilha exatamente em que situações o erro ocorre.
  14. Pois não Amigo. Segue o arquivo que faz as combinações solicitadas. Ao receber os milhões em premiação, mande o dízimo para ser dividido entre os usuários aqui do fórum. COMBIN RESULT 4 JOGOS FUTEBOL V2.7z
  15. COMBIN RESULT 4 JOGOS FUTEBOL V2.7z
  16. O que exatamente você quer fazer? 1. inserir via macro a fórmula na coluna L? 2. inserir via macro os resultados da fórmula na coluna L? 3. ou ... ? Ainda, além das explicações, se você postar uma planilha com os resultados esperados, e não uma imagem, ajudaria mais para entender o que você quer .
  17. O código que postei antes considera que os números contidos na tabela em F5:O14 poderão ser quaisquer números, e não somente de 1 a 100, daí a necessidade da segunda tabela em F16:O25 Já o código abaixo considera que os números contidos na tabela serão sempre de 1 a 100, então o código abaixo irá preencher a tabela com os números de 1 a 100 em ordem aleatória, o que dispensa o uso da segunda tabela em F16:O25. Sub GeraAleat() 'gera tabela com números de 1 a 100 em ordem aleatória Dim k As Integer, i As Long, ii As Long, r1 As Range, r2 As Range, r3 As Range Application.ScreenUpdating = False: [F5:O14] = "" For i = 5 To 14 For ii = 6 To 15 If i > 5 Then Set r1 = [F5].Resize(i - 5, 10): Set r2 = [F5].Offset(i - 5).Resize(, ii - 5) Else Set r1 = [F5]: Set r2 = [F5].Resize(, ii - 5) End If Set r3 = Union(r1, r2) k = Int(1 + Rnd * (100)): Cells(i, ii) = k Do Until Application.CountIf(Range(r3, Cells(i, ii)), k) = 1 k = Int(1 + Rnd * (100)): Cells(i, ii) = k Loop Next ii Next i End Sub
  18. Na fórmula substitua HOJE() por A2.
  19. Um código escrito em linguagem VBA e adequadamente instalado e operado em um arquivo Office torna-se uma macro, então não faz sentido dizer "macro ou VBA", visto que não são alternativas entre si: macro é um objeto e VBA é uma a linguagem. Para a sua questão, experimente o código abaixo. Sub ReplicaAleat() Dim c As Range, i As Integer, ii As Integer Range("F16:O25") = "" i = Int(16 + Rnd * (10)): ii = Int(6 + Rnd * (10)) For Each c In Range("F5:O14") Do Until Cells(i, ii) = "" i = Int(16 + Rnd * (10)): ii = Int(6 + Rnd * (10)) Loop Cells(i, ii) = c.Value Next c End Sub
  20. Experimente: =SE(E(ANO(E11)=ANO(E12);ANO(E11)=ANO(HOJE()));0;SE(ANO(E12)=ANO(HOJE());DATADIF(E11;DATA(ANO(E12)-1;12;31);"m")+1;DATADIF(E11;E12;"m")+1+(1*DIA(E11)>DIA(E12))-(1*DIA(E12)=1)))
  21. Olá a todos. O Roteador tem uns 10 anos de uso, sempre funcionou bem e do nada o wi-fi parou de funcionar. Resetei várias vezes. Ao ligar novamente ele funciona por 2 ou 3 minutos e em seguida interrompe o wi-fi, a indicação de energizado permanece. Obrigado.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!