Openoffice Calc V. 5.1.5.2 - Makro zum Speichern Unter mit Dateinamen aus Zelle?

Hallo Zusammen,

ich bin was Makros angeht ziemlich unerfahren. Dennoch möchte ich es gerne mit eurer Hilfe angehen! Was machen brauche ist ein Makro, dass beim klicken eines Buttons folgende Funktion durchführt.

  1. Wechsel auf "Tabellenblatt 2" (in meiner Datei "Vorlage CSV"
  2. Zelle "B2" kopieren
  3. Speichern Unter -> Dateiname "Roh_[Inhalt Zelle B2]"
  4. Dateiformat .CSV
  5. Dateipfad indem gespeichert werden soll (M:\Abrechnung..Funk- und MBus-Ablesungen..Versandlisten Funkzähler parametriert)

*Das habe ich bisher:

sub csvexp rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ---------------------------------------------------------------------- dim args1(0) as new com.sun.star.beans.PropertyValue args1(0).Name = "Nr" args1(0).Value = 3

dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())

rem ---------------------------------------------------------------------- dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem ---------------------------------------------------------------------- dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem ---------------------------------------------------------------------- dim args4(2) as new com.sun.star.beans.PropertyValue args4(0).Name = "URL" args4(0).Value = "file:///M:/Abrechnung/..Funk-%20und%20MBus-Ablesungen/..Versandlisten%20Funkz%C3%A4hler%20parametriert/Roh_Fe12-11111,%20Kupferstr.%2040-46,%2070565%20Stuttgart.csv" args4(1).Name = "FilterName" args4(1).Value = "Text - txt - csv (StarCalc)" args4(2).Name = "FilterOptions" args4(2).Value = "59,34,22,1,,0,false,true,true,false"

dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args4())

end sub *

Das Problem ist nun, dass er immer unter dem Namen "Fe12-11111, Kupferstr. 40-46, 70565 Stuttgart" speichert, egal welcher inhalt in der Zelle B2 steht.

Habt ihr Ideen, woran das liegt?

Vorab vielen Dank für Eure Hilfe!

Bild zu Frage
Microsoft Excel, speichern, Makro, OpenOffice, Tabellenkalkulation, Calc
Registerfarbe aufgrund von Zellwert einfärben (Excel)?

Ich arbeite grade für eine Kollegin an einer Excel-Tabelle (Excel 2010). Sie wünscht sich nun, dass sich unter einer bestimmten Bedingung die Farben der Registerblätter automatisch ändern. Ich habe dafür die gesamte Tabelle schon soweit vorbereitet, dass eine Formel mir bereits die entsprechende Bedingung ausliest und ausgibt.

Ich gehe dabei jetzt mal ins Detail: In allen Tabellenblätter gibt das Feld J19 mir einen Wert, der entweder =0 oder >0 ist. Bei =0 soll sich der Registername rot färben, bei >0 grün.

Natürlich habe ich Google dazu schon befragt, und mir ist mittlerweile klar, dass sich das mithilfe eines Makros machen ließe. Allerdings liegt genau hier das Problem: Ich habe noch nie mit Makros gearbeitet, schon gar nicht welche geschrieben. Ich weiß mittlerweile wie ich auf die Entwicklertools komme, und wie ich das "Makros"-Fenster öffne. Allerdings habe ich auch nach mehreren (Copy&Paste aus dem Netz) Versuchen es nicht geschafft, dass mir in dem entsprechenden Dialog ein Makro zum Ausführen angezeigt wurde.

Ich bräuchte also eine genaue Anleitung, wo ich was eintragen muss. Ich habe die Tabelle extra so gestaltet, dass der Wert mir in jedem Tabellenblatt im selben Feld ausgegeben wird.

Was ich bislang nicht rausgefunden habe: Läuft das Makro immer automatisch? Oder muss man es immer wieder neu aktivieren? Das wäre nämlich kontraproduktiv, denn die Tabelle soll weitergegeben werden und das Einfärben der Register soll eine "Kontrollfunktion für Dummies" darstelen. Wenn es also jedes Mal aktiviert werden muss, wäre es sinnlos.

Ich hoffe sehr, dass mir jemand helfen kann.

Vielen Dank im Voraus!

Microsoft Excel, Makro, Funktion
Wo ist der Fehler im Code (VBA PowerPoint)?

Hallo meine lieben,

ich benötige wieder einmal eure Hilfe. Ich habe im Internet einen VBA Code gefunden der es ermöglich in einer PowerPoint Präsentation die aktuelle Uhrzeit mit Sekunden anzuzeigen. Da der Code leider nicht 64bit tauglich war hab ich ein wenig rumgetüftelt und siehe da, die Uhr selbst funktioniert schon mal. Aber leider bekomme ich ständig eine Fehlermeldung sobald die Folie gewechselt wird. "slides (unknown member): bad argument type. Excectet Collection index (string or integer). Ich verwende Windows 10 und Office 2016.

Würde mich rießig freuen wenn mir hier jemand weiterhelfen kann.

Vielen Dank im Voraus.

Leider ist der Code zu lange daher in 2 Teile.

Erster Teil:

Option Explicit

'API Declarations
Declare PtrSafe Function SetTimer Lib "user32" _
                            (ByVal hwnd As LongPtr, _
                             ByVal nIDEvent As LongPtr, _
                             ByVal uElapse As LongPtr, _
                             ByVal lpTimerFunc As LongPtr) As LongLong

Declare PtrSafe Function KillTimer Lib "user32" _
                            (ByVal hwnd As LongPtr, _
                             ByVal nIDEvent As LongPtr) As LongLong

' Public Variables
Public ClockTimerID As LongLong
Public prevSlideIdx As LongLong

Const TIMEFORMATSTRING As String = "dd.mm.yyyy - HH:mm:ss - KW :ww" 'show seconds with: "HH:mm:ss""

Dim pptEventObject As New Klasse1 'AppClassModule
'DIESE METHODE EINMALIG UNTER MAKROS STARTEN, DAMIT DAS EVENTHANDLING FUNKTIONIERT!
Sub InitializeApp()
    Set pptEventObject.App = Application
End Sub


Sub StartClockTimer()
    On Error GoTo ErrorOccurred
    
    'first make sure its not already running
    ClockTimerID = KillTimer(0, ClockTimerID)
    ClockTimerID = SetTimer(0, 0, 1000, AddressOf TimerProcClock)
    If ClockTimerID = 0 Then
        MsgBox "Unable to create the clock timer", vbCritical + vbOKOnly, "Error"
        Exit Sub
    End If

    Exit Sub
ErrorOccurred:
    MsgBox Err.Description
End Sub


Sub StopClockTimer()
    On Error GoTo ErrorOccurred
    
    If Not ClockTimerID = 0 Then
        ClockTimerID = KillTimer(0, ClockTimerID)
    End If

    Exit Sub
ErrorOccurred:
    MsgBox Err.Description
End Sub


' The defined routine gets called every nnnn milliseconds.
Sub TimerProcClock(ByVal hwnd As LongPtr, _
                    ByVal uMsg As LongPtr, _
                    ByVal idEvent As LongPtr, _
                    ByVal dwTime As LongPtr)
On Error GoTo ErrHandler
    
    If Not ActiveSlide Is Nothing Then
        ActiveSlide.Shapes("PointaixClockLabel").TextFrame.TextRange.Text = WeekdayName(Weekday((Now()))) + " " + Format(Now(), TIMEFORMATSTRING)
    End If

    Exit Sub
ErrHandler:
End Sub
Microsoft PowerPoint, programmieren, Makro, VBA
Excel: Schiebepuzzle programmieren - Laufzeitfehler 424?

Liebe Community, ich habe versucht eine Schiebepuzzle aus Zahlen in Excel zu programmieren. Den Text seht ihr unten. Jedoch sobald ich auf Ausführen (Wiedergabe-Button) drücke, kommt folgender Fehler:

Laufzeitfehler '424':
Objekt erforderlich

Könnt ihr mir bitte helfen den Fehler zu finden?

Vielen Dank im Vorraus
Lamio13

Dim xpos As Integer   
Dim ypos As Integer  
Dim AlleKnoepfe(1 To 15) As CommandButton

Private Sub UserForm_Initialize()
Set AlleKnoepfe(1) = CommandButton1
Set AlleKnoepfe(2) = CommandButton2
...  
Set AlleKnoepfe(14) = CommandButton14
Set AlleKnoepfe(15) = CommandButton15
End Sub

Sub FindMich(ich As String)
    Dim ii As Integer
    Dim jj As Integer

    For jj = 1 To 4
                 For ii = 1 To 4
                      If (Cells(jj, ii) = ich) Then
                         xpos = ii
                          ypos = jj
                          ii = 5
                          jj = 5
                      End If
                 Next ii
    Next jj
End Sub
Private Sub KannMichBewegen()

    'untersuche, ob rechts frei ist
    If (Cells(ypos, xpos + 1) = "") Then
        Cells(ypos, xpos + 1) = Cells(ypos, xpos)
        Cells(ypos, xpos + 1) = ""
    End If

End Sub

Sub VerschiebMich(SchubladenNummer As Integer)
    'untersuche, ob rechts frei ist
    If (xpos < 4) Then
            If (Cells(ypos, xpos + 1) = "") Then
                Cells(ypos, xpos + 1) = Cells(ypos, xpos)
                Cells(ypos, xpos) = ""
                AlleKnoepfe(SchubladenNummer).Left = AlleKnoepfe(SchubladenNummer).Left + AlleKnoepfe(SchubladenNummer).Width
            End If
    End If

    'untersuche, ob unten frei ist
    If (ypos < 4) Then
            If (Cells(ypos + 1, xpos) = "") Then
                Cells(ypos + 1, xpos) = Cells(ypos, xpos)
                Cells(ypos, xpos) = ""
                AlleKnoepfe(SchubladenNummer).Top = AlleKnoepfe(SchubladenNumemr).Top + AlleKnoepfe(SchubladenNummer).Height
            End If
    End If

    'untersuche, ob links frei ist
    If (xpos > 1) Then
            If (Cells(ypos, xpos - 1) = "") Then
                Cells(ypos, xpos - 1) = Cells(ypos, xpos)
                Cells(ypos, xpos) = ""
                AlleKnoepfe(SchubladenNummer).Left = AlleKnoepfe(SchubladenNummer).Left + AlleKnoepfe(SchubladenNummer).Width
            End If
    End If

    'untersuche, ob oben frei ist
    If (ypos > 1) Then
            If (Cells(ypos - 1, xpos) = "") Then
                Cells(ypos - 1, xpos) = Cells(ypos, xpos)
                Cells(ypos, xpos) = ""
                AlleKnoepfe(SchubladenNummer).Top = AlleKnoepfe(SchubladenNumemr).Top + AlleKnoepfe(SchubladenNummer).Height
            End If
    End If

End Sub

Private Sub CommandButton1_Click()
    FindMich (CommandButton1.Caption)
    VerschiebMich (1)
    End Sub
...
Bild zu Frage
Spiele, Visual Basic, Microsoft Excel, Makro, VBA
Was muss man in Excel eingeben, damit das Datum nicht aktualisiert wird?

Hallo, ich habe wieder eine Excel Frage: ich habe eine Tabelle, Spalten A-H. In der Spalte G habe ich den Status, wo ich eine DropDown-Liste habe und zwischen: "in Bearbeitung", "Material bestellt", [...], "erledigt" auswählen kann. In Spalte H habe ich als Überschrift "erledigt am", es soll also in Spalte H, sobald ich in Spalte G den Status "erledigt" ausgewäht habe, das aktuelle Datum erscheinen. Ich habe also in Spalte H folgende Formel: "=WENN(G50="erledigt";TEXT(JETZT();"TT.MM.JJ");"")". Ich glaube, ihr wisst, worauf ich hinaus wil, also nach dem Speichern soll dich das Datum nicht ändern, tut es aber natürlich. (Ist ja klar!) Aber, da ich erst seit ein paar Monaten mit Excel arbeiten, habe ich noch keine Ahnung. Durch das Stöbern im Internet, habe ich rausgefunden, dass es nicht einfach so funktioniert (oder doch?), sondern, dass man dafür ein Makro braucht (wovon ich absolut keine Ahnung habe). Also so weit bin ich: ich habe die Tabelle offen vor mir, ich klicke auf den Tabellen-Namen und klicke auf "Code anzeigen", dann öffnet sich ja ein Makro Fenster. So, was soll ich nun machen? Ihr wisst ja, welche Spalte ich brauche, es wäre schön einen Code zu haben. :-) Und wenn ich da den Code eingefügt habe, was muss ich dann machen? Ich würde dann auf "speichern" klicken, dann öffnet er ja ein Fenster und weist mich darauf hin, dass ich die Datei als eine Mappe mit Makros speichern muss. Richtig? Dann würde ich das tun. Und dann wenn ich das gespeichert habe, müsste ich die Makros (-> "Inhalt aktivieren") jedes Mal, wenn ich die Datei öffne anklicken, oder? und dann habe ich das, was ich will. Bitte helft mir, ich verzweifle so langsam...

Microsoft Excel, Spalten, Befehle, Makro, VBA, ändern, aktuell, Code, Datum
Täglicher automatisierter Vergleich zweier csv Dateien?

Hallo,

da ich leider nicht alle technischen Begriffe richtig kenne und deshalb evtl. hier falsch verwende bereits vorab die Bitte um Entschuldigung.

Ich bekomme täglich eine csv Datei mit Daten aktueller, also zum heutigen Tag angestellten, Mitarbeitern. Hier steht bspsweise Personalnummer (eindeutiger Schlüssel), Nachname, Vorname,Eintrittsdatum und Austrittsdatum (Achtung: Das Austrittsdatum stimmt leider nicht immer). Zur Veranschaulichung die Datumsangaben mal weggelassen.

...

124514; Müller; Jonas;

231423; Fischer, Joachim;

423313; Haupt, Christian;

...

Sobald ein Mitarbeiter nicht mehr aktiv ist (also aus der Firma ausgetreten ist) wird der Datensatz am folgenden Tag auch nicht mehr übergeben (kommt also in der aktuellen csv Datei nichtmehr vor).

Es würde also am Folgetag die csv folgendermaßen aussehen, wenn Müller das Unternehmen verlassen hat und Newbie beispielsweise neu angefangen hat. Die Neueintritte müssen nicht abgefangen werden, wollte ich nur als Info dazusagen, dass diese dann zusätzlich in der neuen Datei vorhanden sind. Es geht ausschließlich um die Austritte, also die Mitarbeiter die in Vortagsdatei vorkamen, jetzt in tagesaktuellen aber nicht mehr vorkommen.

...

231423; Fischer, Joachim;

423313; Haupt, Christian;

599999; Newbie, Franziska;

...

Da das Austrittsdatum, welches auch mitgeliefert wird, leider teilweise nicht korrekt ist, kann ich mich nicht auf dieses Feld verlassen und irgendwie danach gehen. Auch haben beispielsweise unbefristete Mitarbeiter hier keinen Eintrag.

Ich bin nun auf der Suche nach einer Möglichkeit, wie ich die täglichen Austritte abfangen kann, also die Differenz zwischen mitgelieferten Daten der aktuellen Datei gegenüber der zum Vortag vergleichen kann. Dies sollte jeden Tag automatisiert funktioniert (durch einen Windows Dienst?)

Meine Idee war, dass ich diese beiden csv Dateien Datei H (Heute, im Beispiel oben die Datei mit Newbie) und Datei H-1 (gestern, Datei mit Müller) täglich vergleichen lassen und mir die Austritte jeweils in eine extra Datei, egal ob csv oder Excel, ausgeben lasse, sodass ich am Ende jeden Monats alle Austritte nochmal überprüfen kann.

Im obrigen Beispiel sollte dann beispielsweise der Datensatz zu Herrn Müller in eine Datei übergeben werden inkl den mitgelieferten Informationen wie Eintrittsdatum und Co. und wenn möglich dem aktuellen Tag (oder Zeitpunkt/aktueller Zeitstempel, damit nachvollzogen werden kann, wann genau dieser Mitarbeiter ausgetreten ist)

Leider fehlt mir jede technische Idee, wie ich sowas am schlausten umsetze und technisch realisiere. Hierfür wäre ich euch sehr über eure Ideen dankbar! Ich will ungern zunächst in eine komplett falsche Richtung laufen und danach bemerken, dass dies mir diesem System nicht umsetzbar ist.

Da dies wohl meine Mammutsaufgabe in meinem Praktikum sein wird, bin ich demjenigen, der sich hier die Zeit nimmt, mir bei der Lösungsfindung zu helfen, natürlich sehr, sehr dankbar! Vielen dank!

Microsoft Excel, programmieren, Makro, VBA, skript, csv, PowerShell
Wie durchsuche ich meine Excel Datei nach bestimmten Wörtern pro Spalte, um bei der Dateneingabe und der Suche nach der richtigen Excelzeile Zeit zu sparen?

Meine Datentabllen wachsen und wachsen. Dennoch möchte ich die gesuchte Excel Zeile möglichst schnell finden.

Ich hatte hierfür schonmal eine Suchzeile, inder mir die Zeile mit dem Wert ausgegeben wird, welche ich für die erste Spalte als Vergleich gesucht habe.


=WENNFEHLER(INDEX($A$2:$Z$4400;VERGLEICH($AC$4;$A$2:$A$4400;0);VERGLEICH(AE$2;$A$1:$Z$1;0));"Gib in AC4 einen Wort ein!")

Also kurz erklärt, In AC4 gibt man den gesuchten Wortlaut an. In AE2 ist die varilable Beschriftung der zu durchsuchenden Spalte.

Nun möchte ich, dass in der ersten zu durchsuchenden Spalte (das Wort wird in AC4 angegeben) nach dem Wort auch innerhalb der Zelle gesucht wird. Eignet sich zB für Doppelnamen und man nur nach einem Suchen kann, weil der zweite im Schreiben nicht erwähnt ist. Es sollte ein Treffen mit dem vollständigen Inhalt der gefundenen Zelle ausgegeben werden.

Die darauf folgende Formel rechts nebendran ließt jetzt aus Zelle AC5 einen weiteren Wortteil heraus, welcher in der gleichen Zeile existieren muss wie der Wortteil aus AC4. Somit muss durch die Eingabe in Zelle AC5 (falls FALSCH) die Tabelle weiter durchsucht werden nach dem gleichen Prinzip.

Am Ende der Suchspalte ist dann ein variabler Hyperlink der mich direkt zur passenden Zeile führt, nachden ich bestätigen kann, dass es bei den angezeigten Angaben sich um den richtigen Datenzeilensatz handelt.

Theoretisch gelaube ich schon, dass das mit Excel möglich ist. Bloß ich weiß es einfach nicht :(

Vielen Lieben Dank Für Deine Hilfe !!!

Diese Paar Codezeilen würden mir Stunden an Arbeit in Zukunft sparen :)

Microsoft Excel, Daten, Makro, VBA, Suchmaschine, Analyse, Tabelle
Wie kann ich in Excel viele Zellen einer Spalte miteinander verketten/ Gibt es die Möglichkeit bestimmte Bereiche automatisch zu einer Zelle zusammenzufügen?

Hallo, ich habe eine extrem lange Liste bestehen aus zwei Spalten. In Spalte A sind Zahlen und in Spalte B sind Wörter.

Frage 1: Wie kann ich bestimmte Bereiche in eine Zelle zusammenfügen; am besten durch Komma getrennt. Was ich bislang gefunden habe erscheint mir etwas kompliziert: VERKETTEN(MTRANS(B1:B67)) Dann kommt da sowas raus: {"Nähe"."Nu"."Uni"."Hahn"."Neue"."Huhn"."On"."Yen"."Nahe"."Hohn"."Ion"."Henne".} Hier mache ich nun mit Ersetzen die Anführungszeichen und die Klammern weg und aus dem Punkt ein Komma mit Leerzeile. Geht das nicht irgendwie noch leichter?

Frage 2: Könnte man auch gleich befehlen, dass alle Wörter, denen in Spalte A die gleiche Zahl zugeordnet ist, in einer Zelle zusammengefasst werden?

So sieht das ganze etwa aus:

A B

1 Eid

1 Hoheit

1 Hit

1 Heute

2 Huhn

2 Henne

3 Mühe

3 Oma

3 Heim

usw. Die Liste hat an die 270.000 Einträge (Zeilen). Die Zahlen in Spalte A gehen bis 99999. Daher sollte so viel wie möglich automatisch laufen. Denn fast einhunderttausend Einträge (so wie ich es bislang von Hand mache) zu ändern ist der Horror ... Ein Freund sagte mir, ich brauche wahrscheinlich ein Makro. Allerdings habe ich überhaupt keine Ahnung wie ich das verwende. Daher bitte ich um eine ausführliche Erklärung und hoffe, dass ich nicht zu viel verlange...

Vielen vielen lieben Dank schonmal. Ich hoffe und freue mich auf Antworten

Microsoft Excel, Makro
Wie kann ich bei VBA nach mehreren Kriterien in einer Zeile suchen?

Hallo zusammen.

Ich hab leider nix gescheites zu meiner Problemstellung gefunden, deshalb frage ich jetzt einfach mal direkt nach: Ich möchte in einer großen Tabelle nach mehreren Kriterien in der ersten Zeile suchen. In dieser Zeile sind Überschriften (aus einer .xml übernommen). Leider wiederholen sich die Überschriften ab und an, allerdings mit den unterschiedlichsten Ziffern als Anhängsel (zb AKMKaufteile, AKMKaufteile5, AKMKaufteile324...). Das wäre jetzt aber noch kein Problem, da ich ja normalerweise eh nur nach Teilen des Wortes suche. Ich habe allerdings auch Überschriften die ziemlich ähnlich sind und mit als Treffer gewertet werden so wie ich das mache (zb AKMKaufteileD34, AKMKaufteileB412... also immer entweder das D oder das B mit da drin, und diese Spalten brauche ich nicht).

Zusammengefasst möchte ich einfach nur die erste Zeile nach AKMKaufteile (das ohne D und B) suchen und auch die Zellen/Spalten haben, wo die Ziffern angehängt sind; es handelt sich dabei um Preise, bei D ist das Datum und B der Benutzername angegeben, letztere beiden sind uninteressant).

For i = 1 To 1000
   If InStr(1, Cells(1, i).Value, "AKMKaufteile") > 0 And InStr(1, Cells(1, i).Value, "AKMKaufteileB*") = 0 And InStr(1, Cells(1, i).Value, "AKMKaufteileD*") = 0 Then
      For j = 1 To 300
         If InStr(1, Cells(j, i).Value, "") > 0 Then
             Cells(j, i).Activate
              ActiveCell.Copy Destination:=Worksheets("Ergebnis").Cells(j, 10).Offset(1)
         End If
      Next j
         
   End If
Next i

(So klappt es leider nicht)

Vielen Dank für jeden Tipp der mich weiterbringt ::)

Gruß

Jan

Microsoft Excel, Filter, Makro, VBA
Wie erstelle ich eine variable intelligente Tabelle?

Eine Bestandsauswertung wird in Excel(2010) ausgegeben und tägl. in meine zu analysierende Tabelle in einem Blatt (Abl.Schleifpuffer) abgelegt bzw. überschrieben. In diesem Blatt soll mittels VBA eine intelligente Tabelle erstellt werden.

Per Aufzeichnung klappt das ganz gut, nur gibt es da paar Haken:

  1. sollte sich die Auswertung (Quelle) ändern aufgrund Programmanpassungen, verschieben sich auch die Zellen. So beginnt sie nicht von A11 sondern evtl. von B12

  2. erstelle ich eine intelligente Tabelle, so gibt mir das Makro immer die Größe von der zuerst erstellten Tabelle "$A$11:$N$853" wieder, sodass bei der nächsten Auswertung die Zeilen ab 854 gar nicht mit einfließen. D.h. die Auswertung wird tägl. gemacht und die Länge ist definitiv variabel.

Wie bekomme ich Excel dazu das er automatisch erkennt "Ab Spalte A und Zeile 11 beginnt die Tabelle" und endet bei Spalte A und Zeile 999.

Derzeit ist die Aufzeichnung so verlaufen:

    Sub konvertiere_Abl_als_Tabelle()
'
' konvertiere_Abl_als_Tabelle Makro
'

'
    Sheets("Abl. Schleifpuffer").Select
    Range("A11").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$11:$N$853"), , xlYes).Name = _
        "Abl.Schleifpuffer"
    Range("Abl.Schleifpuffer[#All]").Select
End Sub

Für eure Unterstützung wäre ich sehr dankbar.

Bild zu Frage
Microsoft Excel, Makro, VBA
Wie kann ich Word Textmarken mit einem Excel Makro befüllen?

Hallo liebes Gute Frage Forum,

ich bin ein blutiger Anfänger im Programmieren und möchte mich trotzdem an eine, wie ich finde, nicht ganz so leicht Aufgabe wagen.

Ich hoffe es erbarmt sich jemand und hilft mir weiter.

Meine Aufgabe:

Ich habe eine ExcelDatenbank die mehrere Einträge für mehrere Kunden verwaltet. ( Name, Anrede, Straße usw. )

Außerdem habe ich ein Word Dokument erstellt in das ich die Word Textmarken eingefügt habe ( Ebenfalls so benannt Name, Straße, Anrede usw. )

Nun möchte ich in Excel eine Zeile anklicken und anschließend das Makro ausführen. ( Das Makro soll dann nur für die Ausgewählte Zeile ausgeführt werden )

Die Vorlage soll aber nicht überschrieben werden, es soll ein neues Word Dokument erstellt werden, in dem die Felder dann ausgefüllt sind ( Am besten mit anderem Speicherpfad den ich dann auch direkt im Makro eingeben kann. )

Natürlich habe ich es auch schon selber versucht, allerding haben mir die Codeschnipsel die ich aus dem Internet geholt habe nicht ganz geholfen.

Hier mein Code: http://paste2.org/wFtw5UId

Mein Problem ist es nun, dass nur das letzte Textfeld wo ich die Referenz auf "Hallo" gesetzt habe befüllt werde, die anderen jedoch nicht obwohl excel keine fehlermeldung ausspuckt..

Außerdem hätte ichs gerne so wie oben beschrieben, dass er nur die Vorlage mit den Textmarken öffnet aber nicht überschreibt sondern ein neues Dokument mit den ausgefüllten Textmarken erstellt. (Pfad soll im Makro bestimmt werden)

Ich hoffe sehr das mir jmd. weiter helfen kann

Einen wunschönen Tag noch :)

Microsoft Word, Microsoft Excel, Makro, VBA, Datenbank, Vorlage, Befüllen
Mit Access und VBA einen formatierten Excel-Export durchführen?

Guten Tag, ich hänge mal wieder bei einer Access - Excel Frage fest.

Ich habe ein Access eine Abfrage geschrieben, die mir sortiert eine ID, den zugehörigen Namen und alle dazu zugewiesenen Daten ausgibt.

Da jede Id + name mehrere Daten haben kann, steht das ganzen in mehreren zeilen untereinander. Ich möchte das ganze nun in eine Excel-Datei via Makro exportieren und das ganze so formatieren das Id + name nur einmal drann steht und dann alle Daten.

Das ganze sieht also eig. so aus.

id || name || daten

1 || n1 || daten1

1 || n1 || daten2

1 || n1 || daten3

und soll in der Exel Datei dann so aussehen.

id || name || daten

1 || n1 || daten1

_ || _ || daten2

_ || _ || daten3

_ bedeutet das dort kein Eintrag in der Zelle mehr steht. Ich habe das bisher so gemacht, das ich Die Daten aus Access händisch in eine Excel kopiert habe und dann dort mit einem Makro alles raus sortiert habe. Dim xErsteZeile As Long Dim xZeile As Long

        xErsteZeile = Cells(Rows.Count, 1).End(xlUp).Row
    
        For xZeile = xErsteZeile To 1 Step -1
          If Application.WorksheetFunction.CountIf(Columns(1), Cells(xZeile, 1).Value) > 1 Then
                Range("A" & xZeile).Select
                Selection.Delete Shift:=xlUp
                Range("B" & xZeile).Select
                Selection.Delete Shift:=xlUp
          End If
        Next

Ich würde das ganze jetzt aber über Access machen da es ja der Ausgangspunkt ist. Wenn ich ein Export in ACCES anschaue in VBA sieht dieser ja so aus.

    DoCmd.OutputTo acOutputQuery, "jh_01_01_Abfrage", "Excel97-Excel2003Workbook(*.xls)", "", True, "", , acExportQualityPrint

kann ich davor die Daten noch bearbeiten wie in Excel? Und wenn ja kann mir eventuell jemand einen Tipp geben?

Würde mich sehr freuen.

Grüße

Frost.

Office, Microsoft Excel, programmieren, Access, Makro, VBA
Wie kann, durch Eingabe eines Namens in einer Excel Zelle, ein gleichnamiger Ordner erstellt werden?

Ich möchte in Excel eine Liste mit Namen erstellen und diese mit gleichnamigen Ordnern verknüpfen. Natürlich kann ich die Namen in Excel eintragen und dann ganz normal Ordner erstellen und sie dann mit einem Hyperlink verknüpfen,, aber das müsste duch eine Funktion doch schneller gehen (weil ich das für über 100 Namen machen will...)

Ich bin schon so weit gekommen, dass ich das über dieses "VBA" mache, indem ich Alt+F11 drücke, dann gebe ich dort diesen Code ein:

Sub Ordner_anlegen () 'prüfen ob ein Ordner vorhanden ist und falls nicht 'fragen ob Ordner erstellt werden soll Dim Ord As String Dim Antwort As Integer

Ord = "F:\Kundenkartei\"

If Dir(Ord, vbDirectory) <> "" Then MsgBox "Ordner ist schon vorhanden" Else Antwort = MsgBox("Der Ordner " & Ord & " ist nicht vorhanden." _ & vbNewLine _ & "soll der Ordner angelegt werden?!", vbYesNo) If Antwort = vbYes Then 'Falls kein LW angegeben ist, erstellt die MkDir-Anweisung 'den neuen Ordner auf dem aktuelle LW. 'LW wurde durch "F:\Kundenkartei\" festgelegt MkDir Ord MsgBox "Ordner " & Ord & "angelegt" Else MsgBox "es wurden keine Änderungen vorgenommen" Exit Sub End If End If End Sub

Wenn ich nach "Ord = "F:\Kundenkartei\" z.B. Mustermann eingebe und dann F5 drücke, wird ein Unterordner auf dem USB Stick mit dem Namen Mustermann erstellt (wenn "Mustermann" noch nicht vorhanden ist), aber wie könnte ich diesen Code abändern, sodass ich beispielsweise nur noch "Mustermann" in die Zelle A25 eintragen muss und dann der gleichnamige Ordner, am Besten noch mit der Zelle A 25 verknüpft, in dem Ordner "Kundenkartei" eangelegt wird? Und wie kann ich das dann auf alle Zeilen in der Spalte A anwenden?

Vielen Dank für eure Antworten!

Ich habe mittlerweile schon hunderte Codes(oder Makros?), die ich in den Foren gefunden habe, ausprobiert, aber irgendwie mache ich etwas falsch und ich bin langsam wirklich am verzweifeln :/

Hoffentlich könnt Ihr mir weiterhelfen :) Danke!!!

Microsoft, Microsoft Excel, Microsoft Office, programmieren, Makro, Code, Ordner erstellen

Meistgelesene Fragen zum Thema Makro