Office: Makros nur in einerExceldatei ausführen

Helfe beim Thema Makros nur in einerExceldatei ausführen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; ich habe diverse codezeilen geschrieben unter anderem auch eine for next schleife die eine tabelle neu organisieren soll. wenn der user jetzt eine... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von User, 3. Januar 2011.

  1. Makros nur in einerExceldatei ausführen


    ich habe diverse codezeilen geschrieben unter anderem auch eine for next schleife die eine tabelle neu organisieren soll. wenn der user jetzt eine andere tabelle zur gleichen zeit offen hatt arbeite die schleife auch hier. das dies tötlich ist muss ich nicht extra sagen.
    meine frage ist nun: gibt es eine möglichkeit beim öffnen der datei, die in dieser enthaltenden makros nur auf diese zu beschränken?
    für einzellne sub's habe ich das bereits so gelöst:

    Dim wb_name As String
    wb_name = ActiveWorkbook.Name
    If ActiveWorkbook.Name = wb_name Then
    MsgBox wb_name
    End If

    da mein "kleines" tool aber ziehmlich umfangrei geworden ist würde ich gern die o.g. lösung vorziehen.

    :)
     
  2. Hallo Meister,

    es wäre leichter dir zu helfen, wenn du deinen Code zeigen würdest!




    Gruß Sepp
     
    josef e, 5. Januar 2011
    #2
  3. Private Sub CommandButton1_Click()
    Status_on = 0
    ''Auslesen der anzahl der zeilen aus Installation
    LetzteZeile_auftrag = Sheets("Auftraege").Cells(Rows.Count, 1).End(xlUp).Row + 1
    '' MsgBox "Die letzte Zeile, die einen Wert beinhaltet ist: " & LetzteZeile_auftrag, vbInformation, "Is ja toll !"

    If OptionButton1.Value = True Then
    Status_on = 1
    End If
    If OptionButton2.Value = True Then
    Status_on = 1
    End If
    If OptionButton3.Value = True Then
    Status_on = 1
    End If
    If OptionButton4.Value = True Then
    Status_on = 1
    End If
    If OptionButton5.Value = True Then
    Status_on = 1
    End If


    If UserForm1.TextBox1.Text = "" Then
    MsgBox "kein Kunde eingetragen"
    End If
    If UserForm1.TextBox2.Text = "" Then
    MsgBox "kein Gerät eingetragen"
    End If
    If UserForm1.TextBox3.Text = "" Then
    MsgBox "keine Fehler eingetragen"
    End If
    If Status_on = 0 Then
    MsgBox "kein Status ausgewählt"
    End If




    If UserForm1.TextBox1.Text > "" And UserForm1.TextBox2.Text > "" And UserForm1.TextBox3.Text > "" And Status_on = 1 Then
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 2) = LetzteZeile_auftrag
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 3) = UserForm1.TextBox1.Text
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 4) = UserForm1.TextBox2.Text
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 5) = UserForm1.TextBox3.Text
    If OptionButton1.Value = True Then
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 1) = "Reperatur"
    Status_on = 1
    End If
    If OptionButton2.Value = True Then
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 1) = "Restreperatur"
    Status_on = 1
    End If
    If OptionButton3.Value = True Then
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 1) = "Installation"
    Status_on = 1
    End If
    If OptionButton4.Value = True Then
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 1) = "Lieferung"
    Status_on = 1
    End If
    If OptionButton5.Value = True Then
    Sheets("Auftraege").Cells(LetzteZeile_auftrag, 1) = "Abholung"
    Status_on = 1
    End If

    UserForm1.TextBox1.Text = ""
    UserForm1.TextBox2.Text = ""
    UserForm1.TextBox3.Text = ""
    OptionButton1.Value = False
    OptionButton2.Value = False
    OptionButton3.Value = False
    OptionButton4.Value = False
    OptionButton5.Value = False
    Status_on = 0
    auftrag_aktuell
    UserForm1.Hide
    Range("A4").Select
    End If

    End Sub
     
  4. Makros nur in einerExceldatei ausführen

    schuldigung wr zu schnell. ich glaube das Problem ist durch ein vorstellen vom Workbook("Name.xls"). zu umgehen. da der o.g. code nur eine von "tausend" ist hoffe ich auf eine einfache lösung.
     
  5. Hallo ?,

    also dieser Code bezieht sich, bis auf das "Range("A4").Select" in der letzten Zeile, nur auf die Tabelle "Auftraege", da wird nichts in andere Tabellen geschrieben. Außerdem "organisiert" der Code nichts neu in der Tabelle, sondern trägt nur Werte aus dem UF ein.




    Gruß Sepp
     
    josef e, 5. Januar 2011
    #5
  6. mein Fehler. habe vergessen zu erwähnen das die nur ein Teil des ganzen ist.
    ich hebe hier eine Userform welche über einem anderen Tabelleblatt gestartet wird und die erfassten aufträge in besagte Tabelle geschrieben wird. die erste spalte der tabelle ist das suchkritärium für die eine for next schleife

    Range("B41:K100").Select
    Selection.ClearContents
    'zum lehren des Bereichs
    Range("a4,a4").Select
    LetzteZeile_auftrag = Sheets("Auftraege").Cells(Rows.Count, 2).End(xlUp).Row

    For z = 2 To LetzteZeile_auftrag Step 1
    LetzteZeile_reparatur = ActiveSheet.Cells(Rows.Count, 3).End(xlUp).Row + 1
    If Sheets("Auftraege").Cells(z, 1) = "Reperatur" Then
    ActiveSheet.Cells(LetzteZeile_reparatur, 3) = Sheets("Auftraege").Cells(z, 3) + " / " + Sheets("Auftraege").Cells(z, 4) + " / " + Sheets("Auftraege").Cells(z, 5)
    ActiveSheet.Cells(LetzteZeile_reparatur, 2) = Sheets("Auftraege").Cells(z, 2)
    'an dieser stelle gibt es noch weiter schleifen
    End If
    Next z

    welche die aufträge in der ansicht der anderen tabellen aktuallisieren soll
    genau das macht er dann auch in den anderen Dateien.

    die frage lautet also wie kann ich Datei_1.xls für den Makros von Datei_2.xls schützen
     
  7. Makros nur in einerExceldatei ausführen

    wieder zu schnell.
    Range("A4:A4").select bezieht sich dem zu folge auf das aktuelle Tabellenblatt und nicht auf das Blatt Auftraege
     
  8. Hallo ?,

    warum arbeitest du einmal mit korrektem Verweis ("Sheets("Auftraege").Cells...") und dann wieder mit ("ActiveSheet.Cells...")?

    ActiveSheet bezieht sich, wie der Name ja vermuten lässt, auf die gerade aktive Tabelle, wenn du die richtige Tabelle referenzierst und ggf. auch noch die Mappe mit angibst, dann sollte es keine Probleme geben.

    Außerdem solltest du mit With-Rahmen arbeiten.



    Gruß Sepp
     
    josef e, 5. Januar 2011
    #9
  9. der Code soll in unterschiedlichen tabellenblättern angewand werden welche zum teil noch nicht erstellt sind was ein "sauber referenzieren" nicht nur erschwert sondern meine meinung nach auch unmöglich macht.
    also hier noch mal meine frage: wie kann ich verhindern das in einer Datei "Fremdmakros" ausgeführt werden?
     
  10. Hallo ?

    Wobei ThisWorkbook die Datei ist, die den Code enthält.

    Noch was:
    Ich würde mir Überlegen, ob es nicht Sinnvoller wär, den gesamten Code in ein AddIn zu packen und den User zu Beginn per Dialog die Auswahl der Datei/Tabelle zu ermöglichen. Dann wird am Anfang auf die Datei/Tabelle referenziert und der Code läuft garantiert im richtigen Blatt.




    Gruß Sepp
     
    josef e, 5. Januar 2011
    #11
  11. so in der art mach ich es bereit bei einigen Schleifen(siehe oben) und werde ich warscheinlich auch bei allen anderen machen müssen. hatte gehofft es gäbe einen einfacheren weg.

    falls niemenden mehr was schlichteres einfällt bedanke ich mich bei euch.

    Meister Ede
    Zitat: wer programmiert sucht nicht nach einfachen lösungen sonder ist einfach nur zu faul zum arbeiten. (meine Frau)
     
Thema:

Makros nur in einerExceldatei ausführen

Die Seite wird geladen...
  1. Makros nur in einerExceldatei ausführen - Similar Threads - Makros einerExceldatei ausführen

  2. Wahrscheinlich nicht neu - Makros exportieren

    in Microsoft Word Hilfe
    Wahrscheinlich nicht neu - Makros exportieren: Hallo zusammen, dies ist mein erster Thread... Also, ich habe zwei Rechner in meinem Wlan Netzwerk verbunden, damit ich an derselben Software arbeiten kann (ein Rechner Hauptrechner, einer...
  3. Seit Win 11 Zugriffsprobleme bei Excel über Makros

    in Microsoft Excel Hilfe
    Seit Win 11 Zugriffsprobleme bei Excel über Makros: Guten Tag! Ich habe vor einer Woche mein Windows 10 auf Windows 11 geupgraded, und seitdem habe ich extreme Schwierigkeiten mit meinem Excel. Mit Windows 10 funktionierte alles so, wie es sollte,...
  4. Makros für csv-Export mit Anführungszeichen für ausgewählte Splaten

    in Microsoft Excel Hilfe
    Makros für csv-Export mit Anführungszeichen für ausgewählte Splaten: Hallo liebe Forengemeinde, ich habe folgendes Problem: Ich muss eine csv-Datei bearbeiten und anschließend wieder als csv-Datei speichern. In der Originaldatei sind einige Spalteninhalte in in...
  5. VBA Textbox macht was sie will

    in Microsoft Excel Hilfe
    VBA Textbox macht was sie will: Hallo, ich bin ein Neuling bei VBA auch Excel habe ich bisher nie so intensiv benutzt wie in den letzten Wochen. Ich sitze jetzt schon länger vor einem Problem, welches ich weder mit Hilfe des...
  6. Workbook ohne Makros starten

    in Microsoft Excel Hilfe
    Workbook ohne Makros starten: Moin allerseits, wer das Thema liest, wird sich sicher fragen "und so etwas wird hier wieder aufgewärmt? Ist doch tausendfach im Netz beantwortet!?" Stimmt, denn der Tipp mit der...
  7. Probleme mit Makros und Grafiken nach Umstieg von Word 2011 auf Office 365 (Mac)

    in Microsoft Word Hilfe
    Probleme mit Makros und Grafiken nach Umstieg von Word 2011 auf Office 365 (Mac): Liebes Forum, ich bin kann selbst kaum VBA, hab aber mal einige Makros aufgenommen und dann abgeändert, bin also alles andere als ein Profi. 2015 hat jemand im FOrum (office-loesung.de), dessen...
  8. Makros in Excel 2007 aktivieren

    in Microsoft Excel Hilfe
    Makros in Excel 2007 aktivieren: Fehler 57121
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden