Avatar billede Slettet bruger
01. juli 2009 - 20:24 Der er 9 kommentarer og
1 løsning

VBA - excel

Hej

Jeg er ny i VBA-programmering og kan ikke få følgende to funktioner til at virke:

Jeg vil ved tryk på en knap indsætte en ny fane og omdøbe denne fane til navnet på en fane, der vælges med musen plus noget mere.

Dvs.

Jeg forestiller mig en funktion der putter navnet på en fane der vælges med musen i en string.

Derefter indsættes en ny fane der omdøbes til denne string + noget mere.

Håber en gider og kan hjælpe.

På forhånd tak..
Avatar billede supertekst Ekspert
01. juli 2009 - 23:51 #1
rem Indsætter et nyt Ark "til højre" og omdøber det
...
...
        With ActiveWorkbook
            .Sheets.Add after:=Sheets(ActiveWorkbook.Sheets.count)
            .Sheets(.Sheets.count).Name = NytArkNAvn
        End With
    End If
...
...

....der vælges med musen i en string ???
Avatar billede Slettet bruger
02. juli 2009 - 00:18 #2
Hej

Tja - det kan man måske ikke.

Det er fordi jeg vil stå i et ark som kunne være en forside og behandle data fra et af de andre ark. Det ark der ønskes behandles vil jeg gerne vælge med musen. Kan man det?
Avatar billede supertekst Ekspert
02. juli 2009 - 08:49 #3
I princippet kan alle arknavne være liste på "forsiden". Ved et klik herpå skiftes til det ønskede ark - jo det kan godt lade sig gøre. (har for et par måneder siden netop anvendt dette i et kundesystem).
Avatar billede Slettet bruger
02. juli 2009 - 10:12 #4
Ok. Kunne man gøre følgende:

Lave en knap der opdaterer og laver knapper svarende til de ark der er?
Avatar billede supertekst Ekspert
02. juli 2009 - 10:23 #5
I stedet for at lave knapper - kunne der vises en userform, når man aktiverer forsiden. I denne Userform kunne der være en Listbox, hvor alle arknavne blev vist (undtaget forsiden).
Avatar billede Slettet bruger
02. juli 2009 - 10:56 #6
Ja - god idé.

Hvordan gør man det?
Avatar billede supertekst Ekspert
02. juli 2009 - 11:07 #7
Skal konstruere en lille model inden længe - så hvis du sender en mail til mig (mailadr. under profil) - så returnere jeg filen.
Avatar billede supertekst Ekspert
02. juli 2009 - 11:32 #8
Rem KODE på Forside-fanen
Rem =====================
Private Sub worksheet_activate()
    Load UserForm1
    UserForm1.Show 0
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    worksheet_activate
End Sub

Rem Kode i USERFORM1
Rem ================
Const forsideNavn = "forside"
Dim valgteArkNavn As String
Private Sub CommandButton1_Click()                  'Luk
    Unload UserForm1
End Sub
Private Sub ListBox1_Click()
    valgteArkNavn = Me.ListBox1.Value
   
Rem aktivere valg arknavn
    ActiveWorkbook.Sheets(valgteArkNavn).Activate
End Sub
Private Sub UserForm_activate()
    Me.ListBox1.Clear
   
    For Each ark In ActiveWorkbook.Sheets
        If LCase(ark.Name) <> forsideNavn Then
            Me.ListBox1.AddItem ark.Name
        End If
    Next
End Sub
Avatar billede Slettet bruger
07. juli 2009 - 22:42 #9
Mange tak.

sender du et svar?
Avatar billede supertekst Ekspert
07. juli 2009 - 23:26 #10
Selv tak - du får et svar...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester