Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro nur in bestimmten Spalten ausführen?

Forumthread: Makro nur in bestimmten Spalten ausführen?

Makro nur in bestimmten Spalten ausführen?
Micha
Hallo liebe Spezialisten.
Ich hoffe es kann mir jemand weiter helfen:
Das folgende Makro schreibt in die markierte Zelle eine fortlaufende Nummer.
Ich möchte gerne das dieses Makro nur in den Spalten "Q" und "Y" ausgeführt wird.
Ist eine Zelle in einer anderen Spalte markiert soll eine Fehlermeldung aufpoppen.
Kann mir jemand helfen?
Sub Test()
Dim Nr%
Dim ExcelExe$, dName$
dName = ("C:\Dokumente und Einstellungen\Administrator\Eigene Dateien\") & "\lager.ini"
Close
On Error Resume Next
Open dName For Input As #1
If Err > 0 Then
Open dName For Output As #1
Print #1, "0"
Close
Open dName For Input As #1
End If
Input #1, Nr
Close
ActiveCell.FormulaR1C1 = Nr + 1
Open dName For Output As #1
Print #1, Nr + 1
Close
End Sub
Gruß
Micha
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Makro nur in bestimmten Spalten ausführen?
27.12.2010 17:11:55
Hajo_Zi
Halo Micha,
Option Explicit
Sub Test()
Dim Nr%
Dim ExcelExe$, dName$
If Selection.Count = 1 Then
If Selection.Column = 17 Or Selection.colum = 25 Then
dName = ("C:\Dokumente und Einstellungen\Administrator\Eigene Dateien\") & "\lager. _
ini"
Close
On Error Resume Next
Open dName For Input As #1
If Err > 0 Then
Open dName For Output As #1
Print #1, "0"
Close
Open dName For Input As #1
End If
Input #1, Nr
Close
ActiveCell.FormulaR1C1 = Nr + 1
Open dName For Output As #1
Print #1, Nr + 1
Close
End If
End If
End Sub


Anzeige
AW: Makro nur in bestimmten Spalten ausführen?
27.12.2010 17:35:10
Micha
Hallo Hajo,
Klappt leider nicht
Gruß
Micha
AW: Makro nur in bestimmten Spalten ausführen?
27.12.2010 17:46:30
Hajo_Zi
Hallo Micha,
ich hatte ein n vrgessen
Selection.Column = 25
Gruß Hajo
AW: Makro nur in bestimmten Spalten ausführen?
28.12.2010 12:17:08
Micha
Hallo Hajo,
jetzt klappt´s.
Du hast mir mal wieder toll geholfen :-)
Vielen Dank dafür und beste Grüße
Micha
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Makro nur in bestimmten Spalten ausführen


Schritt-für-Schritt-Anleitung

Um ein Makro in Excel zu erstellen, das nur in den Spalten "Q" (17) und "Y" (25) ausgeführt wird, kannst du folgendes VBA-Skript verwenden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Kopiere und füge den folgenden Code in das Modul ein:
Option Explicit

Sub Test()
    Dim Nr%
    Dim dName$
    If Selection.Count = 1 Then
        If Selection.Column = 17 Or Selection.Column = 25 Then
            dName = ("C:\Dokumente und Einstellungen\Administrator\Eigene Dateien\") & "\lager.ini"
            Close
            On Error Resume Next
            Open dName For Input As #1
            If Err > 0 Then
                Open dName For Output As #1
                Print #1, "0"
                Close
                Open dName For Input As #1
            End If
            Input #1, Nr
            Close
            ActiveCell.FormulaR1C1 = Nr + 1
            Open dName For Output As #1
            Print #1, Nr + 1
            Close
        Else
            MsgBox "Bitte wähle eine Zelle in den Spalten Q oder Y aus.", vbExclamation
        End If
    End If
End Sub
  1. Schließe den VBA-Editor und gehe zurück zu Excel.
  2. Führe das Makro aus, indem du ALT + F8 drückst und das Makro auswählst.

Häufige Fehler und Lösungen

  • Fehlermeldung beim Ausführen des Makros: Stelle sicher, dass du eine Zelle in den Spalten "Q" oder "Y" ausgewählt hast. Andernfalls wird eine Fehlermeldung angezeigt.
  • Makro funktioniert nicht: Überprüfe, ob der Pfad zur lager.ini-Datei korrekt ist und ob du die erforderlichen Berechtigungen hast, um auf diese Datei zuzugreifen.

Alternative Methoden

Falls du keine VBA-Makros verwenden möchtest, kannst du auch die Datenüberprüfung nutzen, um sicherzustellen, dass in einer bestimmten Spalte nur bestimmte Werte eingegeben werden. Diese Methode erfordert jedoch manuelle Eingaben und bietet nicht die Automatisierung eines Makros.

  1. Wähle die Spalten "Q" oder "Y" aus.
  2. Gehe zu Daten > Datenüberprüfung.
  3. Setze die Bedingungen für die Eingabe.

Praktische Beispiele

Wenn du das Makro in einer Excel-Tabelle verwendest, stelle sicher, dass du die Spalte "Q" oder "Y" markierst. Wenn du beispielsweise die Zelle Q1 auswählst und das Makro ausführst, wird die Zahl in der lager.ini-Datei um eins erhöht. Dies ist besonders nützlich, um fortlaufende Nummerierungen in spezifischen Spalten zu verwalten.


Tipps für Profis

  • Fehlerbehandlung: Füge zusätzliche Fehlerbehandlungsroutinen hinzu, um spezifische Fehler abzufangen und eine benutzerfreundliche Fehlermeldung anzuzeigen.
  • Optimierung des Codes: Achte darauf, unnötige Berechnungen oder Dateizugriffe zu vermeiden, um die Ausführungsgeschwindigkeit des Makros zu erhöhen.

FAQ: Häufige Fragen

1. Kann ich das Makro für andere Spalten verwenden?
Ja, ändere einfach die Zahlen in der If-Bedingung, um andere Spalten auszuwählen.

2. Was passiert, wenn die lager.ini-Datei nicht vorhanden ist?
Das Makro erstellt die Datei automatisch und beginnt die Nummerierung bei 0.

3. Funktioniert dieses Makro in Excel 2016?
Ja, das Makro ist mit Excel 2016 und neueren Versionen kompatibel.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige