none
Substituir ("plan2") por TxtBox RRS feed

  • Pergunta

  •  

    É... parece brincadeira mas não consigo substituir esta função!

     

    a linha é a seguinte:

     

    'Copia os dados da atual e cola no próximo mes
    Sheets("Plan1").Select
    'seleção dos dados
    Range("G1").Select
    Selection.Copy
    Sheets("Plan2").Select

    'planilha definida pelo usuário
    Range("H1").Select

    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False


    ThisWorkbook.Save

     

    Esta função copia os dados inseridos na planilha1 linha/coluna G1 para Planilha2.

    Só que eu criei um forme onde tenho uma caixa de texto onde o usuário informa a planilha que quer inserir os dados.

     eu já tentei e não deu serto da seguinte forma:

     

    dim T as String

    T = Me.Textbox1

    onde: Sheets("T").select

    'planilha definida pelo usuário

    Depura

     

    e agora?

    alguém pode me ajudar?

     

     

    domingo, 14 de outubro de 2007 17:37

Respostas

  • Tem que ser sem as aspas, senão o VBA tentará achar uma planilha com nome "T".

     

    Sheets("T").select

     

    terça-feira, 16 de outubro de 2007 00:20
    Moderador
  • Porque você não valida as planilhas existentes?

    Insira uma ComboBox ("Combobox1") e um botão ("cmdActivate") no seu Form.

     

    Depois teste este código:

     

    'Carrega na combobox todas planilhas existentes

    Private Sub UserForm_Activate()
    Dim intSheet As Integer

    For intSheet = 1 To Sheets.Count

        'Pode validar se a planilha nao esta oculta

        'If Sheets(intSheet).Visible = xlSheetVisible Then
           ComboBox1.AddItem Sheets(intSheet).Name
        'End If

    Next intSheet

    End Sub

    'Ativa a planilha selecionada na ComboBox

    Private Sub cmdActivate_Click()
        Sheets(ComboBox1.Text).Activate
    End Sub

     

    Abs

    terça-feira, 16 de outubro de 2007 14:07

Todas as Respostas

  • Tem que ser sem as aspas, senão o VBA tentará achar uma planilha com nome "T".

     

    Sheets("T").select

     

    terça-feira, 16 de outubro de 2007 00:20
    Moderador
  • Porque você não valida as planilhas existentes?

    Insira uma ComboBox ("Combobox1") e um botão ("cmdActivate") no seu Form.

     

    Depois teste este código:

     

    'Carrega na combobox todas planilhas existentes

    Private Sub UserForm_Activate()
    Dim intSheet As Integer

    For intSheet = 1 To Sheets.Count

        'Pode validar se a planilha nao esta oculta

        'If Sheets(intSheet).Visible = xlSheetVisible Then
           ComboBox1.AddItem Sheets(intSheet).Name
        'End If

    Next intSheet

    End Sub

    'Ativa a planilha selecionada na ComboBox

    Private Sub cmdActivate_Click()
        Sheets(ComboBox1.Text).Activate
    End Sub

     

    Abs

    terça-feira, 16 de outubro de 2007 14:07