Thema Datum  Von Nutzer Rating
Antwort
15.08.2022 18:20:31 Lena
NotSolved
15.08.2022 19:02:01 ralf_b
NotSolved
15.08.2022 19:11:42 Lena
NotSolved
15.08.2022 19:13:29 ralf_b
NotSolved
15.08.2022 19:15:13 Lena
NotSolved
15.08.2022 20:08:48 ralf_b
NotSolved
15.08.2022 20:23:08 Lena
NotSolved
15.08.2022 21:50:09 ralf_b
NotSolved
Rot VBA-Proramm test
15.08.2022 22:56:04 ralf_b
NotSolved
16.08.2022 08:30:27 Lena
NotSolved
16.08.2022 17:17:10 ralf_b
NotSolved
19.08.2022 11:03:36 Lena
NotSolved
19.08.2022 20:18:07 ralf_b
NotSolved
22.08.2022 13:54:30 Lena
NotSolved
22.08.2022 18:00:41 ralf_b
NotSolved
23.08.2022 14:44:16 Lena
NotSolved
23.08.2022 18:30:27 ralf_b
NotSolved
26.08.2022 23:18:57 Lena
NotSolved
27.08.2022 08:59:32 ralf_b
NotSolved
27.08.2022 15:11:32 ralf_b
NotSolved
25.08.2022 17:08:48 ralf_b
NotSolved
28.08.2022 13:22:14 Lena
NotSolved
28.08.2022 13:33:53 ralf_b
NotSolved
28.08.2022 16:59:25 Lena
NotSolved
29.08.2022 20:33:56 Lena
NotSolved
29.08.2022 21:48:05 ralf_b
NotSolved
31.08.2022 17:45:24 ralf_b
NotSolved

Ansicht des Beitrags:
Von:
ralf_b
Datum:
15.08.2022 22:56:04
Views:
735
Rating: Antwort:
  Ja
Thema:
VBA-Proramm test

Hier mal ein möglicher Ansatz. Ungetestet.  Kann sein das der eine oder andere Zähler nicht ganz hinhaut. Aber das ist ohne Testdatei fast schon normal. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Sub DateiAuswählen1()
 
    'Deklarierung Variable
    Dim Dateiname As Variant
    Dim lz As Long, lq As Long, i As Long
    'Workbook ist ein VBA-Objekt
    Dim wbQuelle As Workbook
    Dim wsQuelle As Worksheet, wsZiel As Worksheet
    Dim arrQB, arrQD
    
     
    Application.ScreenUpdating = False           'Bildschirmaktualisierung ausschalten
    Application.Calculation = xlCalculationManual
     
    'Öffnet Datei-Fenster um Datei auszuwählen
    Dateiname = Application.GetOpenFilename(FileFilter:="Excel-Dateien(*.xls*),*.xls*")
    'Prüfen ob eine Datei ausgewählt wurde
    If Dateiname <> False Then
       Set wbQuelle = Workbooks.Open(Filename:=Dateiname) 'Arbeitsmappe öffnen
       Set wsQuelle = wbQuelle.Worksheets(1)
       lq = wsQuelle.Cells(wsQuelle.Rows.Count, 2).End(xlUp).Row 'Die letzte Zeile der Spalte B bestimmen
     
        arrQB = wsQuelle.Cells(2, 2).Resize(lq - 2) 'Werte aus Spalte b in Array
        arrQD = wsQuelle.Cells(2, 4).Resize(lq - 2) 'Werte aus Spalte D in Array
        wbQuelle.Close SaveChanges:=False           'Quelle schliessen
         
        Set wsZiel = ThisWorkbook.Worksheets("Haupt")
        'Zeilenwert (ab wo eingefügt werden soll) der immer wieder auf 7 zurückgesetzt _
                        wird, damit er wieder ab diesen Zeilenwert einfügt
 
         
                   
        lz = wsZiel.Cells(wsZiel.Rows.Count, 5).End(xlUp).Row + 1 'erste freie Zeile Spalte E
         
        For i = LBound(arrQB) To UBound(arrQB)   'Schleife um die Zeilen des Array der Spalte B zu durchlaufen
             
            If arrQB(i, 1) <> "" Then 'Prüfen ob etwas drinnen steht
                                
                wsZiel.Cells(lz, "E").Value = arrQB(i, 1) 'werte aus B nach E
                wsZiel.Cells(lz, "F").Value = arrQD(i, 1) 'werte aus D nach F
                lz = lz + 1
            End If
                             
        Next i
        wsZiel.UsedRange.RemoveDuplicates Columns:=5, Header:=xlYes 'Dublikate entfernen.
        'es werden die unteren Doppelten entfernt. Da die neuen Werte unten stehen bleiben die Alten erhalten.
  
    End If
     
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True        'Bildschirmaktualisierung einschalten
 
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
15.08.2022 18:20:31 Lena
NotSolved
15.08.2022 19:02:01 ralf_b
NotSolved
15.08.2022 19:11:42 Lena
NotSolved
15.08.2022 19:13:29 ralf_b
NotSolved
15.08.2022 19:15:13 Lena
NotSolved
15.08.2022 20:08:48 ralf_b
NotSolved
15.08.2022 20:23:08 Lena
NotSolved
15.08.2022 21:50:09 ralf_b
NotSolved
Rot VBA-Proramm test
15.08.2022 22:56:04 ralf_b
NotSolved
16.08.2022 08:30:27 Lena
NotSolved
16.08.2022 17:17:10 ralf_b
NotSolved
19.08.2022 11:03:36 Lena
NotSolved
19.08.2022 20:18:07 ralf_b
NotSolved
22.08.2022 13:54:30 Lena
NotSolved
22.08.2022 18:00:41 ralf_b
NotSolved
23.08.2022 14:44:16 Lena
NotSolved
23.08.2022 18:30:27 ralf_b
NotSolved
26.08.2022 23:18:57 Lena
NotSolved
27.08.2022 08:59:32 ralf_b
NotSolved
27.08.2022 15:11:32 ralf_b
NotSolved
25.08.2022 17:08:48 ralf_b
NotSolved
28.08.2022 13:22:14 Lena
NotSolved
28.08.2022 13:33:53 ralf_b
NotSolved
28.08.2022 16:59:25 Lena
NotSolved
29.08.2022 20:33:56 Lena
NotSolved
29.08.2022 21:48:05 ralf_b
NotSolved
31.08.2022 17:45:24 ralf_b
NotSolved