Laden...

Forenbeiträge von Marccore Ingesamt 9 Beiträge

26.07.2018 - 07:52 Uhr

Hallo ich habe mal eine Frage an euch.

Ich möchte in einem Ordner mit mehreren Unterordnern eine Datei finden die im Namen einen bekannten String enthält... z.b. "990320".

Ich habe jetzt eine Rekursive Suche erstellt und schreibe alle Pfade in eine Array.

Leider habe ich keine andere Lösung gefunden. Wenn jemand eine bessere weiß wäre das toll.

Aber weiter im Text. Jetzt möchte ich das Array, das mit ca. 10.000 Links gefüllt ist, nach diesem String "990320" durchsuchen.

Wir kriege ich das hin ?

Danke schon mal.

Marco

24.07.2018 - 10:10 Uhr

Hallo Leute,
wie kann ich eine den Code verkürzen wenn ich mehrere Parameter eine Textbox ändern will.

In VBA macht man das mit With.

Beispiel:

With MyLabel
.Height = 2000
.Width = 2000
.Caption = "This is MyLabel"
End With

Was wäre die Lösung in C#?

Danke

13.06.2018 - 06:58 Uhr

Danke euch.
Nein das ist kein Missbrauch.
Die Daten kommen aus einem DMS System.
Und sollen in ein neues übertragen werden.
Dabei soll der ganze Datenmüll der sich über 10 Jahre gesammelt hat, gelöscht werden.
Und ich habe zwei CSV Dateien, die ich vergleichen soll.

So ich habe mal das ganze mit einem Dic. getestet und leider auch kein Erfolg gehabt.
Leider kann das Dic. nie zwei gleiche Werte aufnehmen, wovon ich wohl einige in der Datenmenge habe.

12.06.2018 - 15:01 Uhr

Hats du das schonmal probiert?

Also leider habe ich damit noch nichts gemacht. Ich wühle mich da gerade mal durch, aber leider verstehe ich das noch nicht wirklich.

12.06.2018 - 14:54 Uhr

Also leider nur in VBA,
da habe ich einfach mit der .Find Methode und eine For Schleife die Datenfelder Verglichen..


''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++        Deklartion
Dim Wks1 As Worksheet
Dim lngCounterColum As Long
Dim lngCounterRow_Clean As Long
Dim lngCounterRow_FileAll As Long
Dim CkeckBit As Boolean
Dim EndRow_Clean As Long
Dim EndColumn_Clean As Long
Dim EndRow_FileAll As Long
Dim EndColumn_FileAll As Long
Dim error As Integer
Dim OK As Integer
Dim Row As Long
Dim ColumnART As Long
Dim ColumnERP As Long
Dim Test1 As String
Dim Test2 As String
Dim FindString As String
Dim Rng As Range
Dim Cell As String
''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++        Deklartion

Sub Search()


For Wks = 1 To Worksheets.Count
    If Worksheets(Wks).Name = "PDM_Daten" Then
    
            
        Set Wks_Clean = Sheets("PDM_Daten")
        Set Wks_FileAll = Sheets("fileAll00-0F")
        
        With Wks_Clean
        EndRow_Clean = .Cells(Rows.Count, 2).End(xlUp).Row                        '' Ermitteln letzte Zeile
        EndColumn_Clean = .Cells(2, Columns.Count).End(xlToLeft).Column           '' Ermittel letzte Spalte
        
        End With
        
        With Wks_FileAll
        EndRow_FileAll = .Cells(Rows.Count, 4).End(xlUp).Row                        '' Ermitteln letzte Zeile
        EndColumn_FileAll = .Cells(2, Columns.Count).End(xlToLeft).Column           '' Ermittel letzte Spalte
        
        End With


            For lngCounterRow_Clean = 1 To EndRow_Clean
            
        
                    FindString = Wks_Clean.Cells(lngCounterRow_Clean, 2).Value
                    
                    If Trim(FindString) <> "" Then
                        With Wks_FileAll.Range("D:D")
                            Set Rng = .Find(What:=FindString, _
                                            After:=.Cells(.Cells.Count), _
                                            LookIn:=xlValues, _
                                            LookAt:=xlWhole, _
                                            SearchOrder:=xlByRows, _
                                            SearchDirection:=xlNext, _
                                            MatchCase:=False)
                                                        
                            If Not Rng Is Nothing Then
                                Cell = Rng.Address
                                Cell = Right(Cell, Len(Cell) - 3)
                                Wks_FileAll.Cells(Cell, 20).Value = "X"
                                Wks_FileAll.Cells(2, 21).Value = lngCounterRow_Clean
                            ''Else
                                ''MsgBox "Nothing found"
                            End If
                        End With
                    End If
                 



                ''Next lngCounterRow_FileAll
    
            
            Next lngCounterRow_Clean
        
        
        
        
        
        
        Application.ScreenUpdating = False                                  '' Screen Update
           

        
End If
     

End Sub



Next Wks

Exit Sub


Sub MatchTab()
Dim Wks1 As Worksheet, Wks2 As Worksheet
Dim RangeMaster As Range, RangetoMatch As Range, Zelle As Range

'Tabellenname und Bereich anpassen
Set Wks1 = Sheets("fileAll00-0F")
Set RangeMaster = Wks1.Columns(4)
Set Wks2 = Sheets("PDM_Daten")
Set RangetoMatch = Wks2.Columns(2)

On Error GoTo errExit

For Each Zelle In RangeMaster.SpecialCells(xlCellTypeConstants)
    If Application.CountIf(RangetoMatch, Zelle) Then
    Zelle.Interior.Color = vbGreen
    Else
    Zelle.Interior.Color = vbRed
    End If
Next

errExit:
Set Wks1 = Nothing
Set RangeMaster = Nothing
Set Wks2 = Nothing
Set RangetoMatch = Nothing
End Sub

12.06.2018 - 14:52 Uhr

Also leider nur in VBA,
da habe ich einfach mit der .Find Methode und eine For Schleife die Datenfelder Verglichen.
Das dauert ewig.

Ich bin gerade erst am Anfang und muss erstmal die Excel Tabellen irgendwie einlesen.

12.06.2018 - 14:35 Uhr

Danke dir,
aber leider bin ich nicht so ein erfahrener C# Skripter und brauche etwas Hilfe.

12.06.2018 - 14:24 Uhr

Hallo Leute,
ich hoffe ihr könnt mir helfen.
Ich habe schon Ewigkeiten das Net und das Forum durchsucht und ein paar Sachen gefunden.
Leider bin ich nicht an mein Ziel gekommen.

Ich habe eine Excel Datei mit zwei Blättern.

Jetzt möchte ich Tabelle 1 Spalte 2 mit
Tabelle zwei Spalte 4 vergleichen.
Dabei will ich ermitteln welche Werte ich Zellen von Tabelle 2, schon in Tabelle 1 vorhanden sind.
Und wenn diese vorhanden sind will ich in entsprechender Zeile , in Spalte 20 ein X setzten.

Genau das habe ich schon mit VBA gemacht,
das ganze klappt auch ganz gut.

Nur leider sind es pro Tabelle 200.000 Datensätze und das dauert mit VBA 25h.

Grüße
Marco

11.01.2018 - 16:21 Uhr

Hallo Leute,
ich bin noch recht frisch im Programmieren mit C# unterwegs.

Ich möchte gerne ein Programm oder Skript schreiben, womit ich aus einem vorhandenen PDF, bestimmte Seiten drucken kann.

Das schwierige ist, ich kann nicht die Seitenzahlen fest angeben. Diese Ändern sich bei jedem PDF.
Aber ich kann das über die Lesezeichen steuern.

Ich habe in meinem PDF Strukturen enthalten.

Z.b.

=A
+ESS
-K1
+MA
-B1

Ich möchte jetzt alle Seiten Drucken die zur Gruppe +ESS gehören.

Habt ihr da eine Idee ob das überhaupt möglich ist?

Danke
Marco