Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Excel: freie Zelle suchen und Wert einfügen

Frage Microsoft Microsoft Office

Mitglied: BerndVorwerk

BerndVorwerk (Level 1) - Jetzt verbinden

01.08.2014, aktualisiert 23:45 Uhr, 1209 Aufrufe, 6 Kommentare

Noch einmal Hallo an alle,
dieses Script:

Private Sub Worksheet_Activate()
If Sheets("Versuchsauftrag").Range("A40").Value = 0 Then
Dim c As Range
If Sheets("Bewertungsübersicht").Range("B22") = "X" Then
With Sheets("Versuchsauftrag").Range("A40:Y41")
Set c = .Find("", LookIn:=xlValues, lookAt:=xlWhole, SearchOrder:=xlByColumns)
If Not c Is Nothing Then
c.Value = Sheets("Bewertungsübersicht").Range("A23").Value
End If
End With
End If
End If
End Sub

...soll folgendes tun: Wenn Zelle A40 vom Blatt Versuchsauftrag leer ist, soll wenn B22 aus Bewertungsübersicht X ist, der entsprechende Wert aus A22 im ersten freien Feld des Bereiches A40-Y41 eingefügt werden.
(Bitte nicht wundern: natürlich ist A40 dann immer frei und es macht eigentlich keinen Sinn, aber es sollen noch weitere Abfragen hinterher folgen. A40=0 soll nur dazu dienen, dass das Skript nur beim ersten mal auswählen des Arbeitsblattes ausgeführt wird)
Das ganze funktioniert eigentlich auch, nur wird der erste Wert (hier A22) nicht in die freie Zelle A40 eingetragen sondern in A41.... wieso?
Danke und Gruß,
Bernd
Mitglied: Pjordorf
01.08.2014 um 14:21 Uhr
Hallo,

Zitat von BerndVorwerk:
01.
Private Sub Worksheet_Activate() 
02.
If Sheets("Versuchsauftrag").Range("A40").Value = 0 Then 
03.
    Dim c As Rang 
04.
If Sheets("Bewertungsübersicht").Range("B22") = "X" Then 
05.
With Sheets("Versuchsauftrag").Range("A40:Y41") 
06.
    Set c = .Find("", LookIn:=xlValues, lookAt:=xlWhole, SearchOrder:=xlByColumns) 
07.
    If Not c Is Nothing Then 
08.
        c.Value = Sheets("Bewertungsübersicht").Range("A23").Value 
09.
    End If 
10.
End With 
11.
End If 
12.
End If 
13.
End Sub
In Zeile 02 prüfst du ob dort eine Wert gleich 0 (Ziffer NULL) eigetragen ist. 0 <> leer; leer <> Leerzeichen; NUL <> leer; NICHTS <> 0

...soll folgendes tun: Wenn Zelle A40 vom Blatt Versuchsauftrag leer ist,
Wird nur erfüllt wenn dort wirklich NICHTS drin steht

Das ganze funktioniert eigentlich auch, nur wird der erste Wert (hier A22) nicht in die freie Zelle A40 eingetragen sondern in A41.... wieso?
Weil in A40 eben kein NICHTS drin steht, wird die nächste genommen. Deine Zeile 7 sucht nach NICHTS. NICHTS <> 0

Und code Tags in der Formatierung tun dir auch nicht weh um dein Quellcode hier vernünftig darzustellen.

Gruß,
Peter
Bitte warten ..
Mitglied: colinardo
LÖSUNG 01.08.2014, aktualisiert um 23:45 Uhr
Das ganze funktioniert eigentlich auch, nur wird der erste Wert (hier A22) nicht in die freie Zelle A40 eingetragen sondern in A41.... wieso?
weil Range.Find beim Durchlauf die erste Zelle im Bereich immer ganz zum Schluss prüft.
Du müsstest hier den Bereich oben um eine Zelle vergrößern, oder du nimmst die Schleifen-Methode dich ich dir im letzen Post geschrieben habe.

Grüße Uwe
Bitte warten ..
Mitglied: BerndVorwerk
01.08.2014 um 14:38 Uhr
Hallo Peter,
danke für die schnelle Antwort!
ich hatte das Ganze auch schon probiert mit:

If Sheets("Versuchsauftrag").Range("A40").Value = "" Then

"" ist doch dann "nichts", oder?
Ich hatte die Zelle A40 vorher auf jeden Fall leer gemacht.

Dann wird das Ganze auch ausgeführt, aber trotzdem in A41 eingefügt.

code Tags? Wo finde ich hier eine Übesicht über Formatierungsmöglichkeiten? Bin noch ziemlich neu, sorry

Danke und Gruß,
Bernd
Bitte warten ..
Mitglied: colinardo
01.08.2014 um 14:40 Uhr
Zitat von BerndVorwerk:
code Tags? Wo finde ich hier eine Übesicht über Formatierungsmöglichkeiten? Bin noch ziemlich neu, sorry
http://www.administrator.de/faq/20
Bitte warten ..
Mitglied: Pjordorf
01.08.2014 um 14:52 Uhr
Hallo,

Zitat von BerndVorwerk:
"" ist doch dann "nichts", oder?
Unter Excel eher ISTLEER
"" ist eher ein Leerer String

Gruß,
Peter
Bitte warten ..
Mitglied: BerndVorwerk
01.08.2014 um 23:45 Uhr
Super,
damit hat es funktioniert!
Einmal mehr vielen Dank!
Bitte warten ..
Neuester Wissensbeitrag
Festplatten, SSD, Raid

12TB written pro SSD in 2 Jahren mit RAID5 auf Hyper-VServer

Erfahrungsbericht von Lochkartenstanzer zum Thema Festplatten, SSD, Raid ...

Ähnliche Inhalte
Microsoft Office
gelöst Excel VBA Letzte Zelle Suchen dann rechnen und Wert in Zelle Übertragen (3)

Frage von Addi089 zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel Pdf Datei als Icon Symbol in Word einfügen per Drag and drop? (4)

Frage von Geforce zum Thema Microsoft Office ...

Microsoft Office
Excel verliert die Formel, behält aber den Wert (10)

Frage von derausgroenloh zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...