Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1184to1188
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

in Zelle einschreiben

in Zelle einschreiben
Manfred
Hallo zusammen,
ich finde die richtige Zeile nicht.
Das Programm nimmt ab Sp B2 nach unten die Referenz und Schreibt Daten ab Sp D2 nach unten ein.
Nun möchte ich wegen Änderungen alles ab Sp B10 und Sp D10 beginnen lassen.
Ich finde jedoch die richtigen Änderungen nicht.
Kann mir jemand helfen ?
Private Sub A3_Punkte_berechnen()
Dim TabPu As Worksheet
Dim Zeile As Long, Spalte As Long, AnZ As Long, a As Long
Dim von As Long, bis As Long, posZ As Long, Zähler As Byte
'ActiveSheet.Unprotect Password:=""
Application.ScreenUpdating = False
Range("D10:D129").ClearContents
AnZ = Application.WorksheetFunction.CountA(Range("B10:B129"))
Zähler = 0
Set TabPu = Sheets("Punktetabelle")
Zeile = AnZ - 6
With TabPu
For a = 1 To AnZ
If Cells(a + 1, 1) = .Cells(1, .Cells(1, a + 1).Column) Then
Cells(1 + a, 4) = .Cells(Zeile, .Cells(1, a + 1).Column)
Else
Nächste:
If InStr(1, .Cells(1, 6 + Zähler), "-") > 0 Then
posZ = InStr(1, .Cells(1, 6 + Zähler), "-")
von = Left(.Cells(1, 6 + Zähler), posZ - 1)
bis = Right(.Cells(1, 6 + Zähler), Len(.Cells(1, 6 + Zähler)) - posZ)
If (Cells(a + 1, 1) >= von) And (Cells(a + 1, 1)  10 Then GoTo KeineWerteung:
GoTo Nächste:
End If
Else
End If
End If
KeineWerteung:
Zähler = 0
Next a
End With
Application.ScreenUpdating = True
Range("A1").Select
'ActiveSheet.Protect Password:=""
End Sub

Mit freundlichen Grüßen
Manfred

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: in Zelle einschreiben
06.11.2010 11:02:27
fcs
Hallo Manfred,
Hilfe für eine Codeanpassung ist schwierig, wenn Zelladressen korrekt angesprochen werden sollen, aber man den Aufbau der Tabellen nicht kennt.
Suspekt ist für mich die Zeile
Zeile = AnZ - 6
Für Werte von AnZ kleiner 7 wird der Wert kleiner 1 und führt später gff. zu Fehlern, wenn Zeile in Cells(Zeile, xxxx) verwendet wird.
Da Du die Zeilen um 8 Zeilen verschiebst, muss du alle Ausdrucke Cells(a+1, xx) oder Cells(1 + a, xx) anpassen, wenn mit a+1 die Zeile einer Zelladresse im aktiven Blatt berechent werden soll. Wahrscheilich muss du die 1 durch 9 ersetzen.
noch ein anderer Hinweis:
die Anweisungen: .Cells(1, a + 1).Column
zur Berechnung der Spalte kann man vereinfachen zu : a + 1
Gruß
Franz
Anzeige
AW: in Zelle einschreiben
08.11.2010 12:26:57
Manfred
Hallo Franz,
sorry daß ich mich erst jetzt melde, hatte leider keine Zeit.
Das Ändern auf a+1 bzw. 1+a auf a+9 bzw. auf 9+a bringt nichts, habe jetzt einen Excel-Sheet anbei.
Ich finde einfach keine Lösung.
https://www.herber.de/bbs/user/72201.xls
Mit freundlichen Grüßen
Manfred
AW: in Zelle einschreiben
08.11.2010 23:37:06
fcs
Hallo Manfred,
bei deiner Prozedur bin ich nicht ganz durchgestiegen.
Ich die Auswerte-Prozedur des halb umgeschrieben in eine leichter nachvollziehbare Form.
Gruß
Franz
Sub A3_Punkte_berechnen()
Dim TabPu As Worksheet, TabErg As Worksheet
Dim Zeile As Long, AnZ As Long
Dim ZeileTabPu As Long, SpalteTabPu As Long
Dim von As Long, bis As Long, posZ As Long
'ActiveSheet.Unprotect Password:="RDL"
Application.ScreenUpdating = False
Set TabErg = ActiveSheet
TabErg.Range("D10:D73").ClearContents
AnZ = Application.WorksheetFunction.CountA(TabErg.Range("B10:B73"))
If AnZ = von And TabErg.Cells(Zeile, 1) 

Anzeige

347 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige