2016-11-30 1 views
0

ich den Code unten bin mit Arbeitsblatt umbenennen.Umbenennen Arbeitsblatt mit Dropdown-Liste

Option Explicit 

Sub RenWSs() 

    Dim ws As Worksheet 
    Dim shtName 
    Dim newName As String 
    Dim i As Integer 
    Dim RngStr As String 

    RngStr = Application.InputBox(prompt:="Select the Range for the new Sheet's name", Type:=2) 
    For Each ws In Worksheets 
     With ws 
      If Trim(.Range(RngStr)) <> "" Then 
       shtName = Split(Trim(.Range(RngStr)), " ") 
       newName = shtName(0) 
       On Error GoTo ws_name_error 
       .Name = .Range(RngStr) 
       GoTo done 
repeat: 
       .Name = newName & i 
       GoTo done 
ws_name_error: 
       i = i + 1 
       Resume repeat 
      End If 
     End With 
     On Error GoTo 0 
done: 
    Next 

End Sub 

In diesem wähle ich den neuen Namen durch Input Box und es funktioniert gut. Nun, was ich will ist, bevor das Eingabefeld aufgerufen wird, muss der folgende Prozess getan werden.

ich Namen in Dropdown-Liste haben, die jeweils Namen in Dropdown-Liste nacheinander in allen Arbeitsblättern aktualisiert werden, wie J16 die Zelle.

Bitte helfen Sie mir

+0

Ich verstehe nicht, was und wo sind Ihre Drop-Down verloren? Sie haben ein Drop-Down in Zelle "J16" in jedem Blatt? –

+0

ja ich habe Dropdown-Liste in Zelle J16 in jedem Blatt –

+0

was ist die Quelle oder den Wert, dass diese dron nach unten haben sollte? –

Antwort

0

Der Code unten durch alle ws Blätter LOPP wird, und ändert den Wert der Zelle in „J16“ auf „Test 1“ (nur für Testzwecke).

Option Explicit 


Sub ModifyDropDownValue() 

Dim ws As Worksheet 

For Each ws In Worksheets 
    With ws 
     ' modify the value in cell J16 
     .Range("J16").Value = "Test 1" 
    End With 
Next ws 

End Sub 
+0

Danke für Ihre Hilfe, seine Arbeit in Ordnung, aber ich brauche, um die Firmen-Namen in 40 Arbeitsblatt zu aktualisieren, (Name wird anders sein), sondern Test1 des Setzens, wie wähle ich aus dem Dropdown-Liste wie Dropdown-namen 1, Drop-Down Name 2 ........... –