Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
964to968
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
964to968
964to968
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Zuordnung von korrekten Werten
04.04.2008 08:04:00
korrekten
Einen wunderschönen guten Morgen an alle!
Ich hoffe ihr macht mir den Morgen noch schöner, indem ihr mir helfen könnt.
Mal vor weg, ich habe null VBA-Kenntnisse. Vor einem Monat hab ich angefangen/anfangen müssen mich damit auseinander zusetzen. Und ich muss gestehen, dass ist eine sehr tolle Sache, wenn man es kann. Ich habe sehr lange in diesem Archiv gesucht und auch so einiges gefunden. Aber ich bleibe immer wieder an einer Stelle hängen. Nun zu diesem Problem.
Ich habe eine wunderschöne Tabelle. Spalte A bis S, wobei einige ausgeblendet sind und dazu viele Zeilen die immer wieder aktualisiert werden müssen. Hierbei handelt es sich um Zeichnungen und Stücklisten die aufgelistet werden sollen. Die Nummern dieser Zeichnungen und Stücklisten sollen unter dem Dateinamen mit der jeweiligen Verknüpfung auf den jeweiligen Ordner ab Zelle B3 stehen und immer wieder aktualisiert werden können. Das funktioniert mit den Buttons "ZG" und "ST" auch wunderpriemstens, aber das Problem ist, dass ich im Makro geschrieben hab, dass er mir die Nummern (ZG) so in die Zeilen zieht, dass immer eine Zeile dazwischen frei bleibt um somit die Nummern (ST) dazwischen zu setzten, weil ich nicht weiß, wie man die Nummern hintereinander einfügen kann oder am besten noch gleich nach Nummern aufsteigend sortiert einfügen kann. Da es nämlich nicht so viele ST-Nummern gibt wie ZG-Nummern, hab ich zum Schluss immer eine leere Zeile zwischen den Nummern.
Dazu habe ich einen extra Button eingerichtet. Dieser sortier mir die Spalte schön nach Nummern und löscht alle leeren Zeilen. Als das funktionierte war ich total glücklich. Das war der einfache Teil.
Jetzt kommts, zu diesen Nummern gehörten Werte, die noch dahinter in die restlichen Spalten müssen. Ich habe alle diese Werte eingetragen, doch wenn ich jetzt die Spalte mit den Nummern aktualisieren möchte, haut er mir die Werte die dahinter stehen durcheinander (jedenfalls die Zeilen nach unten), es steht keine Wert mehr hinter der richtigen Nummer.
Desweiteren hätte ich gerne, wenn ich aktualisiere und eine neue Nummer dazu kommt, dass es mir hinter dieser neuhinzugekommenen Nummer erst mal nichts schreibt, da ich diese Werte erst einschreiben muss. Es soll mir außerdem anzeigen (am besten über Einblendung des Textes "Neue Zeichnung", bei .tiff und "Neue Stückliste", bei .pdf), dass Nummern neu hinzu gekommen sind.
Ich weiß es ist ein sehr langer Text, aber ich wollte es so gut wie möglich beschreiben, damit ihr mir auch so schnell wie möglich helfen könnt! Bitte, bitte helft mir!
Vielen Dank schon mal für eure Antworten!
LG Anja

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zuordnung von korrekten Werten
04.04.2008 08:14:00
korrekten
Hallo Anja
ja sehr viel Text. Du würdest uns noch besser informieren, wenn du mal eine Beispieldatei hochladen würdest.
Gruß UD

AW: Zuordnung von korrekten Werten
04.04.2008 08:19:43
korrekten
Hallo Uwe,
ich hab nur noch gesucht wo und wie ich das mache, bin aber glaub ich fündig geworden.
Hoffe es funktioniert.
https://www.herber.de/bbs/user/51260.zip
Gruß Anja

AW: Zuordnung von korrekten Werten
04.04.2008 10:10:00
korrekten
Hallo nochmal
Da hast du aber gewaltig geflunkert... "Excel gut - VBA nein"
Das ist ja ein riesiges VBA-Projekt geworden.
- - -
Was mir aufgefallen ist:
- Du löschst bei Betätigung der Knöpfe ZG bzw. ST die Inhalte jeder 2. Zellen in Spalte B (die folgenden Spalten bleiben dabei unverändert)
- Danach holst die Inhalte von Spalte B wieder durch Einlesen der Namen aus den entsprechenden Verzeichnissen.
hierdurch geht aber schon der Bezug zu den Restlichen Spaltendaten verloren.
Da die Anzahl der Dateien sich bei dir nicht großartig ändert bzw. die Reihenfolge der Namen überwiegend gleich bleibt, fällt das nicht überall auf.
Das ist aber die Ursache für "haut er mir die Werte die dahinter stehen durcheinander.. "
Ich würde an deiner Stelle beim Einlesen der Namen prüfen, ob der Name bereits in der Spalte enthalten ist.
z.b. mit x = WorksheetFunction.CountIf(Columns(2), "Der_Dateiname")
- wenn x &gt= 1 dann NICHTS damit machen
- Wenn x=0 ; dann noch nicht da, am Ende der Spalte ergänzen und hier dann auch in den Folgespalten "Einblendung des Textes "Neue Zeichnung", bei .tiff und "Neue Stückliste", bei .pdf" vornehmen.
danach kannst du normal sortieren usw.
Um das aber jetzt in deine Makros einzubauen fehlt mir die Zeit. Das war nur als Tip gedacht.
- - - -
Nochwas ist mir beim durchgehen mit "Einzelschritt" aufgefallen.


      
Private Sub Worksheet_SelectionChange(ByVal Target As Range)' wird durch die CoutA() Funktion jedesmal ausgeführt        

If Worksheets(1).Range("B1") = "" Or Worksheets(1).Range("G1") = "" Then

        Worksheets(1).CommandButton1.Visible = False
        Worksheets(1).CommandButton2.Caption = 
"Pfadeinstellung"
        
Else
        Worksheets(1).CommandButton1.Visible = 
True
        Worksheets(1).CommandButton2.Caption = 
"ZG"
        
End If
End Sub
Sub Leerzeilen_loeschen()
    
'   alle Leerzeilen löschen
    Dim LoI As Long
    
Dim RaZeile As Range
    
    
'!!!!! ###################### von mir ergänzt
    ' durch die CoutA() Funktion wird jedesmal das SelectionChange Ereignis ausgelöst.
    ' wird hierdurch unterdrückt. Dadurch wird der Code wesentlich schneller
    ' die Fehlerbehandlung sorgt für das Wiedereinschalten auch im Fehlerfall
    On Error GoTo Fehler
    Application.EnableEvents = 
False
    
'!!!!!  ######################

    
For LoI = 1 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
        
If Application.WorksheetFunction.CountA(Rows(LoI)) <> ActiveSheet.UsedRange. _
SpecialCells(xlCellTypeLastCell).Column 
Then
            
If Rows(LoI).SpecialCells(xlCellTypeBlanks).Count = ActiveSheet.UsedRange. _
SpecialCells(xlCellTypeLastCell).Column 
Then
                
If RaZeile Is Nothing Then
                    
Set RaZeile = Rows(LoI)
                
Else
                    
Set RaZeile = Union(RaZeile, Rows(LoI))
                
End If
            
End If
        
End If
    
Next LoI
    
If Not RaZeile Is Nothing Then RaZeile.Delete
    
Set RaZeile = Nothing
'!!!!! ###################### von mir ergänzt
Fehler:
    Application.EnableEvents = 
True
'!!!!!  ######################
 
End Sub 


Weiterhin viel Erfolg
Gruß Uwe

Anzeige
AW: Zuordnung von korrekten Werten
04.04.2008 10:29:11
korrekten
Danke dir!!!!
Ich muss mir das dann gleich noch mal in Ruhe durchlesen und dazu die Makros zur Tabelle daneben leben.
Ich hab echt kein Ahnung davon! Das meiste ist aus dem Archiv, nur halt bisschen angepasst. Hab durch probieren so ungefähr herausgefunden welche Werte ich wo ändern muss.
Dann werd ich mich jetzt mal ans korrigieren machen... ;-)
Vielen Dank noch mal und ein schönes Wochenende!
Gruß Anja

184 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige