Excel VBA Makro Code?

Guten Tag zusammen,

Undzwar geht es darum das ich ein Makro erstellt habe der sieht so aus :

Sub Makro1()

' Makro1 Makro

'

   

  Range("D3").Select

  Application.CutCopyMode = False

  Selection.Copy

  Sheets("1M").Select

  Range("C6").Select

  ActiveSheet.Paste

  Sheets("Tabelle1").Select

  Range("J3").Select

  Application.CutCopyMode = False

  Selection.Copy

  Sheets("1M").Select

  Range("C7").Select

  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

    :=False, Transpose:=False

  Sheets("Tabelle1").Select

  Range("R3").Select

  Application.CutCopyMode = False

  Selection.Copy

  Sheets("1M").Select

  Range("C13").Select

  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

    :=False, Transpose:=False

  Range("D26").Select

  Application.CutCopyMode = False

  Selection.Copy

  Sheets("Tabelle1").Select

  Range("H3").Select

  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

    :=False, Transpose:=False

End Sub

Das Problem ist jetzt das ich möchte das er in der Excel Tabelle jede Zeile mit diesem Makro ausfüllt sprich er soll bei Zeile 3 anfangen und bis 322 weiterführen ich habe 2 Mappen 1. "Tabelle1" und "1M"

Tabelle1 hatt die 322 Zeilen aber er springt nicht zur jeder Zeile und die Zelle "D3" , "J3", "R3", "H3" sollten dann auf die nächste Zeile Springen Sprich "D4", "J4" , "R3" , "H4" wenn er auch in der 4 Zeile ist

die restlichen Zellen sollen festbleiben zugehörig zu Mappe "1M"

ich hoffe es ist verständlich was ich meinte :'D

Microsoft Excel, Makro, VBA, Code, Datenbank, VBA Excel
Excel-Funktion - Aus zwei Tabellen verschiedene Beträge mit einem Datum vergleichen?

Hallo zusammen,

ich bin Praktikant in einem Unternehmen und muss eine Auswertung durchführen mit einer Excel für meinen Team. Ich bin hier bereits seit einigen Stunden am ausprobieren und schaffe es selber nicht.

Ich habe eine Excel-Datei mit drei Tabellen:

Tabelle 1: Input

Besitzt folgende Spalten:

- Spalte B: Datum

- Spalte C: Time

- Spalte P: Beträge

In der Tabelle 1 habe ich die Ursprungsdaten. Hier kopiere ich alle Daten aus einer anderen Datei rein. Hier sind die Beträge Zeile für Zeile hinterlegt für das jeweilige Datum. (Siehe Bild 1)

Tabelle 2: Manuelle Eingabe

Besitzt folgende Spalten:

- Spalte A: Datum

- Spalte B: K1

- Spalte C: K2

- Spalte D: K3

- Spalte E-I: K4 bis K8

In der Tabelle 2 habe ich die Vergleichsdaten, die wir manuell eingeben müssen. Hier sind die Beträge Spalte für Spalte hinterlegt für das jeweilige Datum. Es kommt manchmal vor, dass am selben Datum mehrere verschiedene Beträge hinterlegt sind.

Tabelle 3: Auswertung

Besitzt folgende Spalten

- Spalte A: Datum

- Spalte C: Status K1

- Spalte E: Status K2

- Spalte G: Status K3

Spalte I, K, M, O, Q: Status K4 bis Status K8

Könntet Ihr mir dabei helfen eine Excel-Funktion aufzubauen, die Einträge aus der Tabelle 1 und Tabelle 2 mit dem jeweiligen Datum und Betrag zwischen Spalte P (Beträge-Tabelle 1) und Betrag Spalten B-I (K1-8 - Tabelle 2) vergleicht und eine Auswertung in die Tabelle 3 in die jeweilige Spalte C bis Spalte Q gibt.

Wenn der Betrag übereinstimmt mit "Korrekt" und wenn Falsch "Fehler"

Tabelle 1 - Input

Tabelle 2 - Manuelle Eingabe

Tabelle 3 - Auswertung

Bild zu Frage
Microsoft, Microsoft Excel, VBA, Formel, Excel-Formel
Makro mit VBA in Excel zerschossen, brauche dringend Hilfe!?

Hallo zusammen,

vorab schonmal, nein ich habe hier absolut 0% Ahnung hiervon und brauche dringend Hilfe!

Ich habe auf der Arbeit bei einer wichtigen Excel Datei eine neue Spalte eingefügt, was dafür gesorgt hat, dass eine wichtige Spalte rechts davon weiter nach rechts verschoben wurde um eine Zelle.

In dieser Spalte wurden Enddatum eingetragen und diese wurden mit einem Makro über VBA Absteigend von jüngerem Datum oben, nach späteren Datum nach unten hin sortiert.

Nachdem ich die neue Spalte zugefügt habe, funktionierte eins nach dem anderen nicht mehr richtig und ich war so dumm zu versuchen das Makro minimal anzugleichen, sodass es funktioniert und habe es dann getestet.

Dadurch habe ich es nur schlimmer gemacht...

Zudem kann ich jetzt nicht mal mehr in der Tabelle scrollen, zumindest in diesem Reiter, in einem anderen Reiter unten, kann ich scrollen in der Datei.

Der Text in VBA Stand jetzt:

Sub Sortieren()

'

' Sortieren Makro

'

'

  Rows("3:500").Select

  Range("B3").Activate

  ActiveWorkbook.Worksheets("Übersicht").Sort.SortFields.Clear

  ActiveWorkbook.Worksheets("Übersicht").Sort.SortFields.Add Key:=Range( _

    "H4:Hl34"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _

    xlSortNormal

  With ActiveWorkbook.Worksheets("Übersicht").Sort

    .SetRange Range("A3:L500")

    .Header = xlYes

    .MatchCase = False

    .Orientation = xlTopToBottom

    .SortMethod = xlPinYin

    .Apply

  End With

  ActiveWindow.SmallScroll Down:=3

  ActiveSheet.Range("$A$3:$L$97").AutoFilter Field:=12, Criteria1:="="

  ActiveWindow.SmallScroll Down:=-12

End Sub

Bild zu Frage
Microsoft Excel, programmieren, Makro, VBA, VBA Programmierung, VBA Makro, VBA-Code, VBA Excel, makros erstellen
Excel: Wie gestalte ich dieses Makro schneller und effektiver und sorge dafür, dass es bei Neustart nur neue Werte erkennt?

Wie kann ich dieses Makro schneller und effektiver machen und wie bekomme ich es hin, dass es beim Neustart nicht schon wieder die Werte erkennt, die schon einmal  dran waren? Sodass die 50 nach dem ersten Mal Abspielen des Sounds ignoriert wird.

Code:

Sub PlaySound()
  Dim ws As Worksheet
  Dim rng As Range
  Dim cell As Range
  Dim goals As Long
  Dim soundFile As String
  Dim thresholds As Variant
  Dim i As Integer
  Set ws = ThisWorkbook.Worksheets("Spielplan")
  Set rng = ws.Range("O1:O" & ws.Cells(ws.Rows.Count, "O").End(xlUp).row)
  soundFile = "Sound_pfad.mp3"
  'Array of threshold values
  thresholds = Array(50, 100, 150, 200, 250, 300, 350, 400, 450, 500,550,600,650,700,750,800,850,900,950,1000)
  Do While True 'Endlosschleife hinzugefügt
    For Each cell In rng
      If IsNumeric(cell.Value) Then
        goals = goals + cell.Value
        'Check if goals is equal to any of the threshold values
        For i = LBound(thresholds) To UBound(thresholds)
          If goals = thresholds(i) Then
            Application.ScreenUpdating = False
            Application.EnableEvents = False
            ActiveSheet.OLEObjects.Add(Filename:=soundFile, Link:=False, DisplayAsIcon:=False).Select
            Selection.Verb Verb:=xlPrimary
            Selection.Delete
            Application.ScreenUpdating = True
            Application.EnableEvents = True
          End If
        Next i
      End If
    Next cell
    'Verzögerung hinzugefügt, um die CPU-Auslastung zu reduzieren
    Application.Wait (Now + TimeValue("0:05:00"))
  Loop
End Sub
Bild zu Frage
Microsoft Excel, VBA, automatisierung
Excel-Code für Mehrfachauswahl in Dropdown-Listen?

Hallo zusammen,

Ich versuche gerade ein Excel-Dokument zu erstellen, bei dem eine Mehrfachauswahl aus Dropdown-Listen möglich ist. Das heißt aus einer Liste sollte es möglich sein mehrere Werte anzuwählen. Das habe ich auch mit dem untenstehenden VisualBasic-Code gemeistert. Allerdings habe ich erstens das Problem, dass auch eine Mehrfachauswahl des immer gleichen Wertes möglich ist. Theoretisch könnte also in einer Zelle x-mal derselbe Werte auftauchen. Dies soll natürlich nicht möglich sein. Bei Doppelauswahl desselben Wertes soll dieser aus der Zelle wieder verschwinden.

Mein zweites Problem ist, dass ich bislang nur 2 zwei Dropdown-Listen mit Mehrfachauswahl eingefügt bekomme. Sobald ich eine dritte Spalte versuche zu implementieren, bekomme ich eine Fehlermeldung für meinen Code.

Dadurch, dass ich mich mit dem Ganzen nicht so wirklich auskenne, wäre es sehr nett, wenn mir jemand helfen könnte.

Danke!

 

Bisheriger Code:

 

Private Sub Worksheet_Change(ByVal Target As Range)

** Mehrfachauswahl über DropDown-Liste

'** Einfügen im Code-Container des betreffenden Arbeitsblattes

 

'** Dimensionierung der Variablen

Dim rngDV As Range

Dim wert_old As String

Dim wertnew As String

 

'** Errorhandling

On Error GoTo Errorhandling

 

'** Mehrfachauswahl im definierten Bereich "Abteilungen" und "Themen" (Bsp. J2:J2000, I2:I2000) durchführen

If Not Application.Intersect(Target, Range("J2:J2000", "I2:I2000")) Is Nothing Then

 

 '**Range definieren

 Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)

 If rngDV Is Nothing Then GoTo Errorhandling

  

 '** Prüfen, ob eine gültige Zelle ausgewählt wurde und Werte eintragen

 If Not Application.Intersect(Target, rngDV) Is Nothing Then

   Application.EnableEvents = False

   wertnew = Target.Value

   Application.Undo

   wertold = Target.Value

   Target.Value = wertnew

   If wertold <> "" Then

     If wertnew <> "" Then

       Target.Value = wertold & ", " & wertnew

     End If

   End If

 End If

 Application.EnableEvents = True

End If

 

Errorhandling:

Application.EnableEvents = True

End Sub

Visual Basic, Microsoft Excel, VBA, Dropdownliste
mehrere Dokumente und Dateien in einer Datenbank zusammen. Per Access oder andere Lösung?

Hallo zusammen,

wir stehen derzeit vor einer kleinen Umstrukturierung und sind uns nicht sicher in welcher Art und Weise wir es am Besten machen wollen.

Zur Situation. Aktuell haben wir viele Leute die für ein gemeinsames Projekt verschiedenste Dateien führen. Grundrisse, Excel-Daten, PDF´s und noch mehreres anderes. Leider wurde dies nie wirklich zusammengeführt, sondern man teilweise 4 verschiedene Bearbeitungsstände oder muss bei einer Änderung mehrere Dateien parallel bearbeiten und ändern. (Bsp: MAC-Adresse ändert sich: muss man in mehreren Dateien nachbearbeiten, damit es aktuell bleibt.) Das ist das Hauptproblem derzeit, welches geändert werden soll. Der erste Gedanke ging in die Richtung Access Datenbank. Hier sehe ich verschiedene Problematiken, bzw. habe verschiedene Fragen die vielleicht jemand Beantworten kann:

  1. Es wäre notwendig verschiedene Ansichten/ Listen zu generieren: Bsp. alle Daten mit einem Bestimmten Atribut X sollen in einer Liste ausgegeben werden.
  2. Ist es möglich einen Dateipfad zu verlinken?: Nach dem Motto ich hinterlege in einer Ordnerstruktur Grundrisse und kann mir diese in Access anzeigen lassen oder aufrufen lassen. Als Link zum Ordner zum Beispiel?
  3. Ist es möglich (Stichpunkt Grafiken und allgemeine Übersichtlichkeit verschiedener Gewerke) eine grafische Abbildung einzubringen und diese mit Links zu einzelnen Unterdatenbanken zu versehen?

Soweit erstmal ein sehr grober Überblick zu unserer Thematik. Es sind sehr viele Daten die wir einpflegen würde und die auch ineinander Greifen.

Ich bin mir unsicher, ob Access wirklich die perfekte Lösung ist?

Habt ihr damit Erfahrungen und evtl. andere Lösungsansätze? Oder würdet ihr doch Access empfehlen, weil ich einige Funktionen vielleicht nicht kenne?

Vielen Dank und liebe Grüße

Williwasi

Microsoft, Microsoft Excel, IT, Microsoft Office, Access, VBA, Datenbank, Informatik, Informationstechnik, Datenbanksystem

Meistgelesene Fragen zum Thema VBA