Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1052to1056
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Namenfeld autom. vergeben

Namenfeld autom. vergeben
23.02.2009 12:00:50
Stefan
Hallo,
bin heute kaum nervig....
Möchte nun die Vergabe von Namenfelder automatisieren (wenn möglich?!?!).
Mein Code sieht bislang wie folgt aus:

Sub BereichVergabe()
Application.Names.Add "A", ActiveSheet.Range("A1").CurrentRegion
Rows(ActiveCell.Row).Select
Dim zeile As Integer
For i = 1 To 2000
If Cells(i, 1) = "" Then
Cells(i + 1, 1).Activate
Selection.CurrentRegion.Select
Exit Sub
End If
Next i
End Sub


Wie müsste denn nun der weitere Code aussehen? Ich könnte mir da was mit einer Schelife denken oder?
Ich benötige bitte Euere Hilfe!
Gruß, Stefan

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namenfeld autom. vergeben
23.02.2009 12:10:25
Ramses
Hallo
Was soll der Code den bewirken ?
Erkläre lieber mal, was du genau machen willst.
Gruss Rainer
2000 Namen vergeben ist,
23.02.2009 12:11:19
Renee
doch irgendwie nicht sehr sinnvoll, Stefan.
Was willst du den mit diesen anfangen, bzw. was soll der Vorteil gegenüber 'normalen' Zelladressen sein ?
GreetZ Renée
AW: Namenfeld autom. vergeben
23.02.2009 12:18:00
Daniel
Hi
mal so auf Verdacht, weil zum Testen ist ja nichts da.

Sub BereichVergabe()
Dim zeile As Integer
Dim Zeichen as Integer
Zeichen = Asc("A")-1
For i = 1 To 2000
If Cells(i, 1) = "" Then
Zeichen = Zeichen + 1
Application.Names.Add Chr(Zeichen), Cells(i+1,1).CurrentRegion
End If
Next i
End Sub


allerdings sollte es nicht mehr als 26 Namensbereiche geben, sonst musst du dir bei der Namensvergabe noch was einfallen lassen
Gruß, Daniel

Anzeige
AW: Namenfeld autom. vergeben
23.02.2009 12:35:34
Stefan
Hallo,
war wohl ein wenig kurz und unvollständig beschrieben...
Anbei nun eine Bsp.-Datei https://www.herber.de/bbs/user/59686.xls
Mit dem Code habe ich versucht, den aktiven Bereich zu markieren und einen Namen zu zuordnen.
Wie in der Datei zu erkennen ist, habe ich es mit unterschiedlich großen Bereichen zu tun. Zwischen den einzelnen Projekten habe ich immer eine Leerezeile eingefügt. Ob nun die Bereiche mit Buchstaben oder mit Zahlen bestimmt werden ist relativ egal (mehr als 26 Namensbereiche sollten es schon sein).
@ Daniel: Dein Code funktioniert leider nicht so ganz - dennoch vielen Dank.
Gruß, Stefan
Anzeige
AW: Namenfeld autom. vergeben
23.02.2009 12:41:36
Daniel
Hi
ohne Beispieldatei zum Testen ist es natürlich schwierig, auf anhieb funtkionierenden Code zu schreiben.
aber werde doch bitte mal konkreter, was genau funktioniert nicht ?
ein bisschen konkreter könntest du schon werden.
gruß, daniel
AW: Etwas professioneller
23.02.2009 12:36:31
Daniel
Hi
hier die Namensvergabe mal etwas überarbeitet.
Sie sollte etwas schneller sein als dein Makro und auch mehr als 26 Namensbereiche verkraften:

Sub BereichVergabe()
Dim rng As Range
Dim i As Long
Dim Zeichen1 As String
Dim Zeichen2 As String
Set rng = Columns(1).SpecialCells(xlCellTypeConstants)
For i = 1 To rng.Areas.Count
Zeichen1 = Chr(65 + Int(i / 26))
Zeichen2 = Chr(65 + (i - 1) Mod 26)
Application.Names.Add Zeichen1 & Zeichen2, rng.Areas(i).CurrentRegion
Next
End Sub


Gruß, Daniel

Anzeige
AW: Etwas professioneller
23.02.2009 14:06:54
Stefan
Hallo Daniel,
funktioniert einfach prima! Danke.
Gruß, Stefan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige