Collapse column

Autor Thema: Office 2013: Per VBA Tabellenname setzen aus Zellinhalt anderer Tabelle  (Gelesen 385 mal)

Offline MySelf84

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2003
Office 2013: Per VBA Tabellenname setzen aus Zellinhalt anderer Tabelle
« am: Januar 08, 2018, 16:42:38 Nachmittag »
Hallo Profis

Ich habe nun schon Kopfschmerzen weil der Code einfach nicht so will wie ich es möchte.

Habe mir im WWW einen code für mein Thema gesucht und auch gefunden.
Diesen habe ich mir an meine Bedürfnisse angepasst.

Er soll mir den Namen in Sheet Grundeinstellungen Zell F11 nehmen und eine andere Sheet damit umbenennen.
Sobald dord ein anderes Wort / Name eingegeben wird soll dies umgeschrieben werden.

Erter Code war dieser

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    'Für eine Tabelle
    If Not Intersect(Target, Range("B2")) Is Nothing Then
        Me.Name = Range("B2").Value
    End If
End Sub

Funktionierte leider nicht da ich ja von der Sheet in dem der Code steht in eine Andere Sheet auslesen möchte.

Habe noch weitere 20 möglichkeiten versucht.
Keiner funktionierte richtig.

Nun ist es so
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)                                                     'spricht nur diese eine Tabelle an
   
    If Target.Address = "$B$1" = False Then TabName

End Sub

Sub TabName()
        On Error GoTo errorMsgExcel
            If Range("A1") <> "" Then ActiveSheet.Name = Range("A1")
            End
errorMsgExcel:
            MsgBox ("bitte gültige Zeichen auswählen" & Chr$(13) & Chr$(13) & Range("A1") & Chr$(13) & Chr$(13) & "ist leider nicht zulässig als Tabellennamen"), 16, "Fehler"
End Sub



In der Sheet das umbenannt werden soll steht dieser Code
In A1 steht die Formel   =WENN(INDEX(tab_Kontonamen[Kontoname];1)="";"";INDEX(tab_Kontonamen[Kontoname];1))
Dieser Übernimmt  mir den Namen, das Wort, in die aktuelle Sheet
In A2 steht die Formel   =TEIL(ZELLE("dateiname";A1);FINDEN("]";ZELLE("dateiname";A1))+1;255)
Setzt den Namen der aktuell gilt.

Da mir die Überprüfung dieser 2 Zellen, auf Identischen Inhalt per VBA nicht gelungen ist.
Wollte ich es mit einer Wahr Falsch lösung realisieren.

Deswegen die Abfrage ob in B1 Falsch steht.
Formel in B1 =WENN(IDENTISCH(A1;A2);"";"False")

Der Code macht an und für sich dass was ich will, nur nicht WANN ih es will.
Wenn ich den Namen oder das Wort in Sheet Grundeinstellungen ändere muss ich in diese Sheet wechseln irgendeine Zelle bearbeiten und erst dann macht er dies.

Wie bekomme ich dies hin dass es schon beim verlassen der Zelle F11 auslöst ?

Gruß Rene









 

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.