Ir para conteúdo
Fórum Script Brasil

Strogonoff

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Tudo que Strogonoff postou

  1. Coloque o "Me. " antes do listbox 1 e cuidado... as variaveis linhafinal e linha estão declaradas como variant e não como integer você precisa declarar cada uma sem virgula dim linhafinal as integer dim x as integer
  2. boa noite !!! Você precisará dessa macro que resolverá seus problemas para que ela funcione, a celula A1 terá que estar a palavra operador, caso contrário, é so ajutar o range segue a macro : Sub SeparaPausa() Dim W1 As Worksheet 'Declarando variável da primeira matriz Dim W2 As Worksheet 'Declarando variável da segunda matriz Dim iLinhaVendedor As Integer ' Variável que percorrerá as linhas dos vendedores Dim iUltimaLinha As Integer ' Ultima linha da planilha destino Dim bColunaMatriz As Byte ' varável que percorrerá as coluna da planilha destino Dim bColunaCopia As Byte ' varável que percorrerá as colunas da cópia 'declarando as matrizes Set W1 = Planilha1 ' matriz de origem dos dados Set W2 = Planilha2 ' onde colocaremos os dados ' declarando variaveis iLinhaVendedor = 2 ' a varredura começara na linha 2 da planilha1( a linha 1 é o cabeçalho) iUltimaLinha = 2 ' a varredura começara na linha 2 da planilha2( a linha 1 é o cabeçalho) ' considerando que a planilha não seja zerada vamos localizar a última linha While W2.Cells(iUltimaLinha, "A") <> "" 'loop para a ultima linha da planilha2 iUltimaLinha = iUltimaLinha + 1 'evitando loop eterno Wend ' a cada 4 colunas vamos incrementar 1 linha While W1.Cells(iLinhaVendedor, "A").Value <> "" ' loop para percorrer cada linha dos vendedores W2.Cells(iUltimaLinha, "A").Value = W1.Cells(iLinhaVendedor, "A").Value ' grava o nome do vendedor bColunaCopia = 2 'a copia começa na coluna B, na coluna A é o nome bColunaMatriz = 2 ' idem, a coluna A é o nome While W1.Cells(iLinhaVendedor, bColunaMatriz).Value <> "" ' loop para percorrer a coluna dos vendores e achar a palavra pausa do cabeçalho) W2.Cells(iUltimaLinha, bColunaCopia).Value = W1.Cells(iLinhaVendedor, bColunaMatriz).Value 'copiando valor da planilha 1 para a planilha 3 If bColunaCopia = 4 Then 'aqui está a questão a cada 4 colunas precisamos mudar de linha, bColunaCopia = 2 ' precisamos passar a coluna para B W2.Cells(iUltimaLinha, "A").Value = W1.Cells(iLinhaVendedor, "A").Value ' copiar o nome do vendedor na col A If bColunaMatriz < 13 Then ' precisamos verificar se está na ultima coluna da planilha1 para não gerar coluna em branco iUltimaLinha = iUltimaLinha + 1 'incremento de linha End If Else bColunaCopia = bColunaCopia + 1 ' incremento de coluna da panilha 3 End If bColunaMatriz = bColunaMatriz + 1 ' íncrementa a coluna da planilha1 Wend iUltimaLinha = iUltimaLinha + 1 ' incrementa a linha de destino iLinhaVendedor = iLinhaVendedor + 1 ' incrementa a linha de vendedores (evita loop eterno) Wend End Sub Espero que ajude qualquer dúvida estou a disposição
  3. Gabriel, boa tarde!!! a rotina que você postou é para a ultimha linha da planilha 2 da coluna A. Eu costumo usar essa rotina Private Sub CheckBox1_Click() CheckBox1.Value = False seu código aqui.... End Sub ou.. Private Sub CheckBox1_Click() call rotina() End Sub sub rotina() UserForm1.CheckBox1.Value = False (ou o nome do formulário) end sub outra dica: declare Dim Ws as Worksheet set Ws = Planilha2.. fica mais fácil para trabalhar para não ter que toda hora escrever planilha2.. espero ter ajudado.. caso ficou alguma dúvida, sugiro anexar uma planilha com o que precisa para devolvermos ela resolvida( crie uma pasta somente com a rotina que precisa... abraço
  4. Ronil Boa tarde! Não entendi sua pergunta, você tem arquivos do Excel compartilhado ou arquivos diversos, se entendi ao certo, você precisa habilitar uma pasta no seu Pc para compartilhamento e bloquear o restante ( o que o Napster ou Soulseek fazia), acredito que ficará mais simples para você se estivermos falando de compartilhamento de pasta. se estivermos falando somente no excel, uma rotina simples para verificar o nome das planilhas dentro de uma pasta, ai você consegue ter um star para a rotina que você precisa. Sub VerificaPlanilhas() For Each Sheet In ActiveWorkbook.Sheets MsgBox Sheet.Name Next Sheet End Sub Seria isso?? Se não, peço para descrever um pouco melhor o que precisa para tentar ajudar. Abraço
×
×
  • Criar Novo...