Re: Bei Blattkopie nächster Wert aus Tabelle, Zeile...
24.07.2002 20:01:56
L.Vira
''Die Zeilennummer wird aus der Registry ausgelesen. Falls
''da, warum auch immer, kein Wert drin steht, wird er erstmal
''mit 1 initialisiert(also z.B. beim ersten Start des Makros.
''Ich weiß nicht, ob das unter Windows NT geht, da braucht man
''wohl Administrator- Rechte, um in die Registry zu schreiben.
''Dann musst du das entweder in die Customer- Properties
''oder in ein ausgeblendetes Blatt schreiben.''Schlüssel in der Registry:
''HKEY_CURRENT_USER\Software\VB and VBA Program Settings
''so siehst dann komplett aus:
''HKEY_CURRENT_USER\Software\VB and VBA Program Settings\Dateiname\Schlüssel
Option Explicit
Sub Blatt_Kopie()
Dim ZNr As Long
''Voreinstellung Zeilennummer
ZNr = 1
''Auslesen, falls nix da, 1 einstellen
''Die Einträge natürlich sinnvoll benennen...
If GetSetting("Dateiname", "Schlüssel", "ZeilenNr") = "" Then
SaveSetting "Dateiname", "Schlüssel", "ZeilenNr", ZNr
End If
''Zeilennummer aus Registry lesen. Da dort nur strings
''gespeichert werden, in Long umwandeln.
ZNr = CDbl(GetSetting("Dateiname", "Schlüssel", "ZeilenNr"))
''Deine eigentliche Kopieraktion
Sheets("Tabelle2").Copy After:=Sheets(Sheets.Count)
''In A1 wert aus Tabelle1, Spalte A, Zeile dynamisch
[a1] = Sheets("Tabelle1").Cells(ZNr, 1)
''Zeilennummer hochzählen....
ZNr = ZNr + 1
''...und in Registry speichern
SaveSetting "Dateiname", "Schlüssel", "ZeilenNr", ZNr
End Sub