Office: Zelleninhalt/Ergebnis in andere Zelle Kopieren

Helfe beim Thema Zelleninhalt/Ergebnis in andere Zelle Kopieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hey, ich möchte auf Tabellenblatt A einen Wert berechnen z.b. eine Gewinnaufteilung. Als Ergebnis bekomme ich 3 Namen und 3 "%te" zurück. Nun möchte... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Amakido, 7. Mai 2006.

  1. Amakido Erfahrener User

    Zelleninhalt/Ergebnis in andere Zelle Kopieren


    Hey,

    ich möchte auf Tabellenblatt A einen Wert berechnen z.b. eine Gewinnaufteilung. Als Ergebnis bekomme ich 3 Namen und 3 "%te" zurück. Nun möchte ich das Ergebnis nicht von Hand von Tabellenblatt A (nur zum berechnen), in das Daten-Blatt (TabellenBlatt B) übertragen, sondern möchte das mit einer Funktion erledigen.
    Zudem soll das aber keine Verknüpfung sondern eine Art von kopieren des Ergebnisses sein.

    wie könnte man das am besten erledigen? ( Alle Daten-Blätter sind identisch aufgebaut )

    Gruß Amakido
     
    Amakido, 7. Mai 2006
    #1
  2. Michael
    Michael Administrator
    Es gibt keine Funktion kopieren. Wenn Du keine Verknüpfung möchtest kannst Du nur mit einem Makro kopieren. Hier mal ein kleines Beispiel:

    Code:
    Sub Makro1()
        Range("A1:C6").Select
        Selection.Copy
        Sheets("Tabelle2").Select
        Range("A1").Select
        ActiveSheet.Paste
    End Sub
    
    Das Makro kopiert den Bereich A1-C& in dem aktiven Blatt. Dann geht es in Tabelle2 und Zelle A1 und fügt das eben kopierte ein.

    Gruß
    Michael
     
    Michael, 7. Mai 2006
    #2
  3. Amakido Erfahrener User
    Hey,

    da ich noch nie mit Makros gearbeitet habe werde ich wohl sicher noch etwas mehr Hilfestellung benötigen. Was habe ich gemacht?:

    ich habe eine Testmappe erstellt und einen Button von der StuerkommandoToolbox genommen. Dann landete ich mit Doppelkick auf den Button -> Microsoft Visual Basic Quelltexteingabe und habe dann folgendes eingegeben:

    Code:
    Private Sub CommandButton1_Click()
        Range("A1:B4").Select
        Selection.Copy
        Sheets("Tabelle2").Select
        Range("A1").Select
        ActiveSheet.Paste
    End Sub
    

    in der Tabelle auf "Tabelle1" stehen test-Zahlen drin und durch die Funktion sollen mir jetzt diese Zahlen auf das nächste Tabellenblatt "Tabelle2" kopiert werden. Doch wenn ich den Entwurfsmodus verlasse, und auf den Button klicke kommt folgender Fehler:


    Laufzeitfehler '1004':
    Die Select -Methode des Range-Objektes konnte nicht ausgeührt werden.

    Zudem soll es möglich sein das der Benutzer selber bestimmt in welches Tabellenblatt das Kopierte hin kommt ... wäre es möglich eine kleine Benutzerschnittstelle zu schaffen das der Benutzer ein Tabellenblatt angeben kann? Wie würde das ausehen?
     
    Amakido, 7. Mai 2006
    #3
  4. freaky
    freaky Erfahrener User

    Zelleninhalt/Ergebnis in andere Zelle Kopieren

    Hi,

    dann hier mal eine Variante ohne das Select:

    Code:
    Private Sub CommandButton1_Click()
    Dim Zelle, Blattname
    Dim i As Long
    Dim Tabelle As Boolean
    
    Blattname = InputBox("Bitte den Tabellennamen eingeben: ")
    
    For i = 1 To ActiveWorkbook.Sheets.Count
        If Blattname = ActiveWorkbook.Sheets(i).Name Then
           Tabelle = True
        End If
    Next
    
    If Tabelle Then
        For Each Zelle In Selection
            ActiveWorkbook.Sheets(Blattname).Range(Zelle.Address) = Zelle
        Next
    Else
        MsgBox "Keine oder falsche Tabelle eingegeben!"
        Exit Sub
    End If
    
    End Sub
    Du bekommst ein Eingabeaufforderung für den Tabellenblattnamen. Wenn das richtige angegeben wird (Groß- und Kleinschriebung beachten!) wird der markierte Bereich genau auf dieses Tabellenblatt übertragen.

    So war es doch gemeint...denn die Tabellen sind doch identisch vom Aufbau...
     
    freaky, 7. Mai 2006
    #4
  5. Amakido Erfahrener User
    danke freaky,

    funktioniert super. ist es auch möglich ohne dieses "extra-Fenster" ? dh. das er das Ziel aus einer Angabe in einer Zelle nehmen kann?



    für den Benutzer:

    Ziel: [Eingabe] (absendenButton)



    Danke,

    Gruß Amakido
     
    Amakido, 7. Mai 2006
    #5
  6. freaky
    freaky Erfahrener User
    Hallo,

    klar- dann musst du nur den Zelleninhalt der Variablen "Blattname" zuordnen:

    statt dieser Zeile:

    Code:
    Blattname = InputBox("Bitte den Tabellennamen eingeben: ") 
    dann diese Zeile einfügen:

    Code:
    Blattname = Range("G5")
    Dann wird der Wert aus der Zelle "G5" genommen...
     
    freaky, 8. Mai 2006
    #6
  7. Amakido Erfahrener User
    gut das Problem wäre damit gelöst... jetzt gibts aber noch ein anderes. Es gibt ein "Berechnungsblatt" und die vielen Datenblätter. Im Berechnungsblatt werden die zu kopierenden Daten erstellt, und sollen dann in das (ein) bestimmte Datenblatt übertragen werden. Alle Datenblätter sehen gleich aus (identischer Aufbau)... aber er weicht vom Aufbau des Berechnungsblattes ab somit müsste man noch ein "Ziel" können wo die Daten in das Datenblatt eingefügt werden sollen...


    Gruß Amakido
     
    Amakido, 8. Mai 2006
    #7
  8. freaky
    freaky Erfahrener User

    Zelleninhalt/Ergebnis in andere Zelle Kopieren

    Hi,

    ...dann wird alles doch viel komplizierter.

    Wäre es nicht einfacher, die Struktur der zu übertragenden Zellen einfach den anderne Tabellenblättern anzupassen bzw. auf dem Berchnungsblatt den Aufbau anpassen? Dann wäre doch das Ziel wieder identisch...

    Ist denn das Ziel immer gleich . dann kannst du doch das Ziel fest benennen oder? Wenn dann aber wieder die Markierung von dem festen Bereich anweicht gibt es Fehlermeldungen....
     
    freaky, 8. Mai 2006
    #8
  9. Amakido Erfahrener User
    Das Arbeitsblatt in dem die Berechnung vorgenommen werden, ist von so grundlegend anderer Formatierung das eine Anpassung unmöglich ist. Das Ziel dh. die Ziel-Zellen sind von der Position im Datenblatt immer gleich da alle Datenblätter identisch sind. das einzige was sich unterschiedet ist halt der Name des Datenblattes.
    Zudem sollen aber nicht alle Datenblätter dann den selben Inhalt (in den Zellen) haben ... ich möchte schon verschiedene Ergebnisse in verschiedenen Datenblättern eintragen und damit festhalten können.
     
    Amakido, 8. Mai 2006
    #9
  10. freaky
    freaky Erfahrener User
    Hi,

    ok - dann teste ich nachher noch mal.... ;-)
     
    freaky, 8. Mai 2006
    #10
  11. freaky
    freaky Erfahrener User
    Hallo,

    dann hier mal ein etwas komplexere Lösung:

    Code:
    Private Sub CommandButton1_Click()
    Dim Zelle, Blattname, Ziel
    Dim i As Long, x As Long
    Dim Tabelle As Boolean
    Dim Altrg As Range, Neurg As Range
    Dim Mldg
    
    Set Altrg = Selection
    
    If Altrg.Cells.Count < 1 Then
        MsgBox "Kein Bereich ausgewählt! ...Abbruch!"
        Exit Sub
    End If
    
    Blattname = InputBox("Bitte den Tabellennamen eingeben: ")
    
    For i = 1 To ActiveWorkbook.Sheets.Count
        If Blattname = ActiveWorkbook.Sheets(i).Name Then
           Tabelle = True
        End If
    Next
    
    If Tabelle Then
        ActiveWorkbook.Sheets(Blattname).Activate
        Mldg = "Quellbereich: Zellbereich: " & Altrg.Address & Chr(13) & _
                "Anzahl der Zellen: " & Altrg.Cells.Count & Chr(13) & _
               "Bitte den Zielbereich in der Tabelle " & Blattname & _
               " (gleiche Anzahl an Zellen) angeben (z.B. C2:E2): "
        Ziel = InputBox(Mldg)
        
        If Ziel = "" Then
            MsgBox "Keine Zieleingabe ....Abbruch!", vbCritical
            Exit Sub
        End If
        
        Set Neurg = ActiveWorkbook.Sheets(Blattname).Range(Ziel)
        
        If Altrg.Cells.Count <> Neurg.Cells.Count Then
            MsgBox "Die angegebenen Bereiche stimmen nicht überein! ...Abbruch!", vbCritical
            Exit Sub
        End If
        
        For x = 1 To Altrg.Cells.Count
            For i = 1 To Neurg.Cells.Count
                If x = i Then
                    Neurg.Cells(i) = Altrg(x)
                    Exit For
                End If
            Next
        Next
    Else
        MsgBox "Keine oder falsche Tabelle eingegeben!"
        Exit Sub
    End If
    
    End Sub
    Schau es Dir mal an, wie es funktioniert.... Es sind halt einige Fehlerroutinen mit eingebaut. ;-)
     
    freaky, 8. Mai 2006
    #11
  12. Amakido Erfahrener User
    danke bist nen Schatz, ich werde es ausprobieren und dann hier posten... bin zur zeit etwas im Stress.

    Danke :)


    Gruß Amakido

    Edit:

    ich noch mal, habe deinen Quelltext etwas umgeschrieben so das er genau das macht was ich mir vorstelle ... es wird der Fehler abgefangen ob als Zieltabelle ein Falscher oder kein Wert eingetragen wird, an sonsten ist die Sache weitestgehend ohne "infoboxen". Falls ich einen grobe Ausnahme übersehen / nicht beachtet habe kannst gerne mal nachschauen. Danke für den Code ... jetzt ist es genau das was ich suche :)

    Code:
    
    Private Sub CommandButton1_Click()
    Dim Blattname
    Dim i As Long, x As Long
    Dim Tabelle As Boolean
    Dim Altrg As Range, Neurg As Range
    
    Set Altrg = Range("A1:C3")
    
    If Altrg.Cells.Count < 1 Then
        MsgBox "Kein Bereich ausgewählt! ...Abbruch!"
        Exit Sub
    End If
    
    Blattname = Range("A6")
    
    For i = 1 To ActiveWorkbook.Sheets.Count
        If Blattname = ActiveWorkbook.Sheets(i).Name Then
           Tabelle = True
        End If
    Next
    
    If Tabelle Then
        ActiveWorkbook.Sheets(Blattname).Activate
        Set Neurg = ActiveWorkbook.Sheets(Blattname).Range("A1:C3")
         
        For x = 1 To Altrg.Cells.Count
            For i = 1 To Neurg.Cells.Count
                If x = i Then
                    Neurg.Cells(i) = Altrg(x)
                    Exit For
                End If
            Next
        Next
    Else
        MsgBox "Keine oder falsche Tabelle eingegeben!"
        Exit Sub
    End If
    
    End Sub
    
    
    ich habe die Abfragen die über eine "box" abläuft gleich als Range("..") angegeben da die Quell- und die Zielzellen schon bekannt sind nur der Name des Blattes wird vom Benutzer noch abgefragt und dort findet dann auch eine Fehlerbehandlung statt.

    Danke noch einmal...

    Gruß Amakido
     
    Amakido, 8. Mai 2006
    #12
  13. Amakido Erfahrener User

    Zelleninhalt/Ergebnis in andere Zelle Kopieren

    Hi,

    ich noch einmal...

    ich habe meinen letzten Post "editiert" aber ich weiß nicht ob auf eine Veränderung des letzten Post reagiert wird daher erstelle ich einen neuen... mit den 2 kleinen Dingen hier:

    1) erst funktioniert alles super und wenn ich das Projekt ein zweites Mal (nach Einfügen des Makros starte) kommt immer die Meldung "Makros sind in diesem Projekt deaktiviert" aber auch wenn ich die Sicherheit auf "niedrig" schiebe ... bleibt die Meldung vorhanden und ich kann nicht aus dem Entwurfsmodus heraus. ... ein Zertifikat hab ich eh nicht das ich ranhängen könnte, oder doch? wie komm ich mich um das Problem drücken.

    2)... habe ein Programm gefunden mit dem man eigene Zertifikate erstellen kann ... ist gleich bei Office mit bei "Selfcert.exe" würdest du das auch empfehlen oder hättest du eine andere Lösung, da dort irgend etwas von (ausschließlich für privaten Gebrauch) drinsteht?
     
    Amakido, 9. Mai 2006
    #13
  14. freaky
    freaky Erfahrener User
    Hi,

    erstmal zur Veränderung des Codes:

    Wenn Du z.B. den Bereich fest definierst brauchst Du die ganzen Abfragen nach den Zellen nicht mehr. Das habe ich nur eingebaut, falls jemand was falsches eingibt oder markiert. Das kann weg:

    Code:
    If Altrg.Cells.Count < 1 Then 
        MsgBox "Kein Bereich ausgewählt! ...Abbruch!" 
        Exit Sub 
    End If 
    Dann wirds nochmal etwas schlanker...


    Deine Fehlermeldung wird wenig mit dem Code zu tun haben. Kann ich mir jedenfalls nicht vorstellen. Vielleicht ist da noch ein anderer Fehler. Der Bereich, der übertragen wird, ist ja so groß auch wieder nicht.


    Nun zu der Geschichte mit den Zertifikaten:

    "Selfcert.exe" erstelt zwar ein eigenes Zeretifikat. Das ist aber nicht zu vergleichen mit den Zertifikaten, dei man kostenpflichtig beziehen kann.

    Mit diesem Zertifikat kannst du Dein Makro signieren - das ist aber praktisch nichts Wert. Du musst das Zwertifikat auf jeden PC praktisch registrieren udn als vertrauenswürdig einstufen (manuell!). Doch wenn jemand den VBA-Editor öffnet und dann nur eine Kommentar zufügt ist die Signatur weg. Diese Signatur dient lediglich dazu, anzuzeigen, wer das Makro erstellt hat. Mehr kann das System nicht.

    Zufriedenstellend wirst Du sowas damit nicht in den Griff bekommen. Da das auch alles recht umständlich ist würd eich mir die Arbeit sparen...

    Schau dir mal diese Seite dazu an:
    http://office.microsoft.com/de-de/assistance/HP052495551031.aspx

    und so wird es dann entfernt:
    http://office.microsoft.com/de-de/assistance/HP030849481031.aspx

    Und hier nochmal was zur Erklärung:
    http://office.microsoft.com/de-de/assistance/HP052495581031.aspx

    Die selbst erstellten Zertifikate sind IMHO überflüssig...

    Ich rate ienfach alle Sicherheitsstufen in Office auf niedrig zu stellen. Das ist eine von Microsoft vorgegaukelte Sicherheit. Letzlich wird nur das ausführen von Makros ggf. geblockt - aber Makroviren sollte jedes vernünftig abgesichertes System/Virewnprogramm ohne Probleme meistern können. Und mehr machen diese "Sicherheitsstufen" nicht....
     
    freaky, 10. Mai 2006
    #14
  15. Amakido Erfahrener User
    Hey,

    ich habe mir alles durchgelesen, ich denke mal jetzt sollten alle Probleme die hier auftauchten gelöst sein... und möchte mich für deine tolle Unterstützung bedanken und wenn du möchtest, kannst du dir gern einmal die "Arbeit" anschauen unter www.MeineKleineEcke.de . Dort findest du mehrere Link, du solltest den Link: HF_Maske mit Daten [Makro] in gepackter oder ungepackter Version herunter laden. Im Arbeitsblatt (AnteilRechner) unter Punkt "Auswertung" ist der Button zur Übertragung der Namen + %te und die Eingabe des Zielblattes. Falls du es dir anschaust, würde ich mich über deine Meinung zum Projekt freuen (Aufbau / Struktur / Farben / Kommentare / ...) , obgleich dir der Sinn des ganzen klar wird ;-)


    Vielen Dank

    Gruß Amakido
     
    Amakido, 10. Mai 2006
    #15
Thema:

Zelleninhalt/Ergebnis in andere Zelle Kopieren

Die Seite wird geladen...
  1. Zelleninhalt/Ergebnis in andere Zelle Kopieren - Similar Threads - Zelleninhalt Ergebnis Zelle

  2. VBA Kopieren von Zelleninhalte in Textbox

    in Microsoft Excel Hilfe
    VBA Kopieren von Zelleninhalte in Textbox: Hallo zusammen, ich habe diesen VBA Code aus diesen Forum genommen und hätte ein paar Fragen dazu. Der Code wurde von Beverly zur verfügung gestellt. Private Sub...
  3. Übertragung von Zelleninhalten aus einer in eine andere Tabelle

    in Microsoft Excel Hilfe
    Übertragung von Zelleninhalten aus einer in eine andere Tabelle: Hallöchen ihr Excel-Legenden, ich habe folgendes Problem. Bei der Arbeit müssen wir für ein Projekt alle zwei Monate alle Leistungen mit dem Datum, der genauen Leistung und der gearbeiteten...
  4. Excel Funktion, Ergebnis aus Zelle behalten obwohl Ursprungszelle entfernt wird

    in Microsoft Excel Hilfe
    Excel Funktion, Ergebnis aus Zelle behalten obwohl Ursprungszelle entfernt wird: Hallo, Ich habe folgendes Problem. Ich möchte aus einer Lsite aus einem anderen Tabellenblatt werte filtern und in eine bestimmte liste einfügen wenn sie die Bedingungen erfüllen. Jedoch sollen...
  5. Zelleninhalt Datumsabhängig ändern

    in Microsoft Excel Hilfe
    Zelleninhalt Datumsabhängig ändern: Hallo zusammen! Um es gleich vorweg zu sagen, meine Excel-Kenntnisse sind sehr rudimentär, ich bitte um Nachsicht. Nun zu meinem Anliegen/Problem: Ich habe eine Excel-Datei mit einem...
  6. Mit Hyperlink mehrere Zellen(inhalt!) anwählen

    in Microsoft Excel Hilfe
    Mit Hyperlink mehrere Zellen(inhalt!) anwählen: Moin zusammen, ich habe folgendes Problem: Ich habe eine Arbeitsmappe mit zwei Tabellen, bei der ich auf dem zweiten Blatt eine Zelle, einen Hyperlink, anklicken möchte, sodass ich in das erste...
  7. Zelleninhalt zerlegen

    in Microsoft Excel Hilfe
    Zelleninhalt zerlegen: Hallo, ich hätte zwei anliegen. 1.) Ich habe in einer Zelle eine Zahlenreihe. Diese Zahlenreihe ist nicht getrennt durch Kommata, Leerzeichen o.Ä.. Wie kann ich ohne jedes Mal einzeln in der...
  8. Zelleninhalt einfügen trotz Blattschutz

    in Microsoft Excel Hilfe
    Zelleninhalt einfügen trotz Blattschutz: Guten Abend, ich habe mal eine Frage bzgl. dem einfügen von Inhalten in mehreren Zellen. Ist es möglich den Blattschutz (o.ä.) so einzustellen das er beim einfügen alles einfügt was "frei und...
  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