Em primeiro lugar, obrigado por ler isto. Eu sou muito mais um novato VBA, e este é um projeto para o trabalho, então qualquer ajuda seria muito apreciada.
Eu tenho uma pasta de trabalho ("modelo Scorecard_working") com folhas "Itens abertos" e "Observações fechado". Eu escrevi duas macros para fazer 2 procedimentos necessários.
O primeiro destina-se ao mover uma linha "Abrir itens" folha a folha "observações fechado" quando uma linha está marcada "Fechado" (na coluna R).
O segundo pretende mover uma linha de folha "observações fechado" folha "abrir itens" quando uma linha está marcada "Aberta" (na coluna W).
-Essa primeira macro funciona como um encanto no computador que eu escrevi sobre no Excel 2003, mas quando tento executar a macro no mesmo arquivo em outro computador com o Excel 2003, recebo um erro de tempo de execução na tela do Excel (2147417848(80010108) "Método 'Corte' do objeto"Intervalo"falhou") e na tela do VBA, que recebo a mensagem "o objeto invocado foi desconectado do seus clientes". Como isso pode ser corrigido para rodar em computadores diferentes?
Sub tester()
Dim rng como gama, usedcell como gama
Dim lastrow como longo, x As Boolean
Set rng = Intersect (folhas ("abrir itens Track List").UsedRange _
Folhas ("abrir itens Track List").Range("R:R"))
Para cada usedcell em rng
x = avaliar ("= não (ISERROR (Pesquisar (""fechado" "," & usedcell.Endereço & ",1)))")
Se x então
LastRow = Sheets ("observações fechado").Células (Rows.Count, "R").End(xlUp).Linha
Folhas ("abrir itens Track List").Linhas (usedcell.Linha).Copie folhas ("observações fechadas").Linhas (lastrow + 1)
Folhas ("abrir itens Track List").Linhas (usedcell.Linha).ClearContents
End If
Próxima usedcell
End Sub
Este segundo código de Macro que eu usei para enviar dados de volta para "Itens abertos" de "Observações fechado". Corretamente corta as linhas com a condição "Aberto", mas ele falha em 2 partes:
1) só corta a linha superior que diz "Abrir" em vez de cortar todas as linhas que dizem "Abrir" na coluna W-preciso dela para cortar todas as linhas que dizem "Aberto" simultaneamente
2) quando ele corta e cola a outra linha de "Observações fechado" para "Itens abertos", cola sobre o último recortar e colar-eu preciso dele para colar para a próxima linha vazia
Sub x)
Dim rng como gama
Set rng = Intersect (folhas ("observações fechado").UsedRange _
Folhas ("observações fechadas").Colunas ("W"))
Para cada rng em colunas ("W").SpecialCells(x1CellTypeConstants).Áreas
Selecione o caso rng(1)
Caso "Abrir"
Rows(RNG(1).Linha).Corte folhas ("abrir itens Track List").Linhas (Count + 1).Offset(1,0)
End Select
Rng próxima
End Sub
Qualquer ajuda é muito apreciada, obrigado antecipadamente!
Edit:
Sem ofensa tomada! Preciso de ajuda, e eu estou contente de tê-lo de gente com mais experiência!
Eu tentei o código "Private Sub Worksheet_BeforeDoubleClick" e uma vez que funciona em outros computadores (ele corta e cola para outra folha), mas depois dessa primeira vez, Excel congela-se novamente. Qualquer idéia sobre o que fazer?
Além disso, eu li o artigo e acredito que eu estou fazendo uma chamada não qualificada no código original, mas não sei como resolver isso.