Notifications
Clear all

Autonumeração

12 Posts
1 Usuários
0 Reactions
1,636 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Pessoal procurei alguns exemplos mas não foi possivel adaptar a situação seria possivel contar com as dicas dos amigos para resolver. Estou copiando dados de uma plan para outra e gostaria de incluir uma coluna com Autonumeração :

Sub Transfere()
   

Sheets("FilaAtividadesExecutando").Select
Range("$A$2:$e$2000").Select
Selection.Copy

    Sheets("DadosCopiados").Select
    
    L = Sheets("DadosCopiados").Cells(Rows.Count, 1).End(xlUp).Row + 1
    Range("A" & L).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
              
   'gerar autonumeração apartir da coluna F ate aonde houver dados na coluna A
              
 
End Sub
 
Postado : 25/11/2012 12:10 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde!!

Tente...

 Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
    Dim RowOffset As Long
    Dim IndexCol As String
    RowOffset = 0
     
    IndexCol = "F"
     
    Intersect(ActiveCell.EntireRow, Columns(IndexCol)).Value = ActiveCell.Row + RowOffset
End Sub

Arquivo em:
viewtopic.php?f=21&t=6401&p=33614#p33614
Att

 
Postado : 25/11/2012 12:17 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Alexandre, testei o sua sugestão continua ocorrendo o mesmo problema dos codigos que achei na net.
Como copio um intervalo e colo este intervalo e so executa a autonumeração uma vez , preciso que ele autonumere a coluna f ate aonde tiver dados na coluna A.
Vou anexar a planilha para você ter uma ideia.

 
Postado : 25/11/2012 4:11 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Esqueci de anexar segue:

 
Postado : 25/11/2012 4:17 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

tente adaptar esse.

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
     
    If Target.Column > 1 And Target.Column <= 7 Then
        Cells(Target.Row, 7).Value = Target.Offset(, -1).Value + 1
         
    End If
End Sub
 
Postado : 25/11/2012 5:20 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

Veja o arquivo pronto.
http://www.sendspace.com/file/430cyb

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 1 And Target.Column <= 7 Then
If IsNumeric(Target.Offset(-1, 0).Value) Then
Cells(Target.Row, 6).Value = Target.Offset(-1, 0).Value + 1
Else
Cells(Target.Row, 6).Value = 1
End If
End If
End Sub

Não se esqueça de clicar na mãozinha e marcar sua postagem como Resolvido!!
viewtopic.php?f=7&t=3784
Att

 
Postado : 25/11/2012 6:08 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Alexandre usei o codigo baixei o seu exemplo, mas continua não funcionando, so numera a primeira linha as demias so apos eu clicar na planilha.

 
Postado : 26/11/2012 4:34 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

Acho eu que não estou entendo você, ou vice versa.

Imagine você usando sua planilha, agora diga tudo isso aqui.

Talvez eu entendendo consiga lhe ajudar.

Att

 
Postado : 26/11/2012 4:53 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Ola boa noite...
De inicio obrigado pela paciencia....

se você usar a macro transfere do meu exemplo, ela copia
valores de uma planilha para outra tranquilo até aqui.
Foram sete linhas copiadas e coladas na planilha DADOSCOPIADOS, neste planilha preciso autonumerar a coluna F
apartir da celula F2, então teremos uma autonumeração de 1 a 7. Mais tarde atualizei minha planilha fila e tenho mais tres
valores para guardar na planilha DADOSCOPIADOS então preciso continuar a numeração na coluna F que agora continua de 8 até
10.

Testei seu codigo e exemplo não sei se é a versão ou a forma que ele esta na evento change da planilha, e a maneira
como tranfiro a celulas copiadas e não autonumera a coluna F.
No seu micro esta funcionando...

 
Postado : 26/11/2012 5:44 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

geroeane,

Das duas, uma... Ou vc faz sua macro assim:

Sub Transfere()
   

Sheets("FilaAtividadesExecutando").Select
Range("$A$2:$e$2000").Select
Selection.Copy

    Sheets("DadosCopiados").Select
    
    L = Sheets("DadosCopiados").Cells(Rows.Count, 1).End(xlUp).Row + 1
    Range("A" & L).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
              
   Range("F2").Select
    ActiveCell.FormulaR1C1 = "=IF(RC[-5]="""","""",ROW()-1)"
    Range("F2").Select
    Selection.Copy
    Range("F2:F2000").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Range("A1").Select
   
 
End Sub

Ou faz assim:

Em F2 vc digita =SE(A2="";"";LIN()-1) e arraste até F2000.

Como seus dados são copiados vai funcionar (se fossem inseridos teríamos que usar o INDIRETO() e ENDEREÇO()).

Abs,

 
Postado : 26/11/2012 10:52 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia!!
Depois de ter lido, eu entendi.

Baixe o arquivo em:
http://www.sendspace.com/file/5z030n
Aperte o Botão Copiar dados e fça os testes.
Att

 
Postado : 27/11/2012 6:06 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Matrix, obrigado pela sua dica, mas a solução proposta pelo alexandre, foi perfeita.
Grato pela ajuda....

 
Postado : 27/11/2012 4:59 pm