termiman
Goto Top

Visual Basic Wert in Tabelle eintragen und erweitern

Hallo liebe Leute,

ich bekam damals schon einen sehr guten Tipp für meine kleine Excel Tabelle. Virtual Basic Wert in eine Zelle eintragen

Nun würde ich mir gerne noch eine kleine Erleichterung einbauen.

0f6dd9dd246097a7bfd133dd0e544d78

Ich arbeite ziemlich oft mit dieser Liste und habe ein SVerweis der die Produkte und dessen Daten abruft.

Da immer wieder neue Produkte hinzukommen, würde ich gerne wie im Bild dargestellt mit einer kleinen VB Hilfe mir die Arbeit erleichtern.

Die Schwierigkeit sehe ich für mich, dass das Skript in der 'range' A1:A15 auf die nächste leere Zeilen prüfen muss, um dort den neuen Wert eintragen zu können.


Vielleicht habt ihr eine Idee

liebe Grüße und vielen Dank im Voraus


Termiman

Content-ID: 253322

Url: https://administrator.de/contentid/253322

Ausgedruckt am: 26.11.2024 um 07:11 Uhr

114757
114757 30.10.2014, aktualisiert am 31.10.2014 um 11:20:51 Uhr
Goto Top
ganz einfach, mit :
Range("A1").End(xlDown).Offset(1,0)  
oder
Cells(Rows.Count,1).End(xlUp).Offset(1,0)
erhältst du immer die nächste leere Zelle in Spalte A

Gruß jodel32

p.s. und Pack das "Virtuelle" Basic weg, das heißt "Visual" Basic face-wink
Termiman
Termiman 31.10.2014 um 01:12:52 Uhr
Goto Top
Hey Jodel32. Erst einmal vielen Dank für die kleine Verbesserung. face-smile

Habe schon versucht das ganze umzusetzen. Wollte das von meiner anderen Formel anpassen, bisslang noch ohne Erfolg

Sub ChangePrice()
Dim rgFound As Excel.Range
Set rgFound = ActiveSheet.Range("A1").End(xlDown).Row).Find(ActiveSheet.Range("E3"), , , xlWhole, , , True)
Else
rgFound.Offset(0, 1, 2) = ActiveSheet.Range("F3")
End If
End Sub

!!!!!!!

Wenn du mir noch einen kleine Hilfestellung geben kannst, sonst probiere ich erst einmal weiter.


liebe Grüsse

Termiman
colinardo
Lösung colinardo 31.10.2014, aktualisiert am 02.11.2014 um 10:27:57 Uhr
Goto Top
Hallo Termiman,
machst du so:
Sub ChangePrice()
    Dim rgFound As Range,rgNew As Range
    With ActiveSheet
        'Produktnummer suchen im Bereich A2:A?  
        Set rgFound = .Range("A2:A" & .Range("A1").End(xlDown).Row).Find(.Range("E4"), LookIn:=xlValues, Lookat:=xlWhole)  

        If rgFound Is Nothing Then
            'Wurde kein Produkt gefunden ermittle die nächste leere Zelle und  übertrage die Werte des neuen Produktes dorthin  
            Set rgNew = .Range("A1").End(xlDown).Offset(1, 0)  
            .Range(rgNew, rgNew.Offset(0, 2)).Value = .Range("E4:G4").Value  
        Else
             'Produkt wurde gefunden, ändere dessen Werte entsprechend  
            .Range(rgFound, rgFound.Offset(0, 2)).Value = .Range("E4:G4").Value  
        End If
    End With
End Sub
Grüße Uwe
Termiman
Termiman 31.10.2014 aktualisiert um 18:08:49 Uhr
Goto Top
Hey Uwe,

WOW, vielen Dank funktioniert prima, vor Allem das gleich geprüft wird ob das Produkt schon existent ist. Klasse!!!

Nochmals, danke an euch beiden für die schnelle Hilfe face-smile


liebe Grüße

Termiman