skipperas Δημοσ. 21 Απριλίου 2016 Δημοσ. 21 Απριλίου 2016 Παίδες καλησπέρα, Έχω ένα θεματάκι που παλεύω τις τελευταίες μέρες και θέλω τη βοήθεια σας. Έχω ένα excelάκι. Στο Sheet1 έχω δύο στήλες, Α και Β. Στην Α έχω τον τίτλο και στην Β την τιμή. Περίπου 10 γραμμές. Αυτό που θέλω είναι να προσθέσω ένα κουμπί στο Sheet1, με τίτλο "Καταχώρηση Δεδομένων", το οποίο να μεταφέρει τις τιμές που βάζω στο Sheet1 (συγκεκριμένα στην Β στήλη) σε άλλο φύλλο Sheet2, κάθε φορά σε νέα γραμμή. Αυτή τη φορά οριζοντίως, δηλαδή 10 στήλες. Υπάρχει πουθενά έτοιμος ο κώδικας? Μπορεί να βοηθήσει κάποιος?
pmav99 Δημοσ. 21 Απριλίου 2016 Δημοσ. 21 Απριλίου 2016 Λογικά κάνεις δουλειά με το transpose https://support.office.com/en-us/article/Switch-transpose-columns-and-rows-ed1215f5-59af-47e6-953b-0b513b094dc2
skipperas Δημοσ. 21 Απριλίου 2016 Μέλος Δημοσ. 21 Απριλίου 2016 Ναι το έχω υπ'όψην, απλά τα δεδομένα αλλάζουν κάθε φορά. Οι αλλαγές που κάνω στο Sheet1-Στήλη Β θέλω να καταχωρούνται σε νέο φύλλο σε νέα σειρά κάθε φορά. πχ. Βάζω δεδομένα στο Sheet1-Στήλη Β -> πατάω κουμπί -> καταχωρούνται οριζοντίως στο Sheet2-Σειρά 1 Βάζω νέα δεδομένα στο Sheet1-Στήλη Β -> πατάω κουμπί -> καταχωρούνται οριζοντίως στο Sheet2-Σειρά 2
M2000 Δημοσ. 21 Απριλίου 2016 Δημοσ. 21 Απριλίου 2016 Αυτό που θες λέγεται append (προσθήκη στο τέλος) Για να ψάχνεις στο google βοηθάει η τεχνική ορολογία... http://stackoverflow.com/questions/15288026/vba-adding-data-to-last-row-in-excel-2010 http://www.siddharthrout.com/2012/10/02/find-last-row-in-an-excel-sheetvbavb-net/
Parasomnia Δημοσ. 22 Απριλίου 2016 Δημοσ. 22 Απριλίου 2016 Ναι το έχω υπ'όψην, απλά τα δεδομένα αλλάζουν κάθε φορά. Οι αλλαγές που κάνω στο Sheet1-Στήλη Β θέλω να καταχωρούνται σε νέο φύλλο σε νέα σειρά κάθε φορά. πχ. Βάζω δεδομένα στο Sheet1-Στήλη Β -> πατάω κουμπί -> καταχωρούνται οριζοντίως στο Sheet2-Σειρά 1 Βάζω νέα δεδομένα στο Sheet1-Στήλη Β -> πατάω κουμπί -> καταχωρούνται οριζοντίως στο Sheet2-Σειρά 2 Δεν ξέρω αν βρήκες λύση αλλά μπορείς να δοκιμάσεις κάτι σαν το παρακάτω , αλλάζοντας τα ονόματα φύλλων και θέσεις κελιών με αυτα που θέλεις. Public Sub copyrange() Dim rg1 As Range Dim v1 As Integer Dim targetRow As Long On Error Resume Next Set rg1 = Application.InputBox(Prompt:="Select area:", Title:="Selection", Default:=Selection.Address, Type:=8) If rg1 Is Nothing Then Exit Sub With ActiveWorkbook.Sheets("Sheet2") .Cells(1, 1) = "1st row title" If .Cells(2, 1) = "" Then targetRow = 2 Else targetRow = .Range("a1").End(xlDown).Row + 1 End If End With For v1 = 1 To rg1.Rows.Count ActiveWorkbook.Sheets("Sheet2").Cells(targetRow, v1) = rg1(v1, 1) Next End Sub ή αυτό που είναι πιο απλό αλλά θα πρέπει να ορίζεις κάθε φορά πού θα κάνει paste Worksheets("Sheet1").Range("A1:A5").Copy Worksheets("Sheet2").Range("A1").PasteSpecial Transpose:=True
k33theod Δημοσ. 22 Απριλίου 2016 Δημοσ. 22 Απριλίου 2016 Γιατί δεν κάνεις στο excel απευθείας ανάθεση τιμής χωρίς κουμπί Εννοώ παττάς το κελί που θέλεις στο sheet2 και μετά = και πατάς στο κελί που θέλεις στο sheet1 Ότι τιμή δίνεις στο sheet1 θα πηγαίνει αυτόματα στο sheet2
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα