Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Παίδες καλησπέρα,

 

Έχω ένα θεματάκι που παλεύω τις τελευταίες μέρες και θέλω τη βοήθεια σας.

Έχω ένα excelάκι.

Στο Sheet1 έχω δύο στήλες, Α και Β. Στην Α έχω τον τίτλο και στην Β την τιμή. Περίπου 10 γραμμές.

Αυτό που θέλω είναι να προσθέσω ένα κουμπί στο Sheet1, με τίτλο "Καταχώρηση Δεδομένων", το οποίο να μεταφέρει τις τιμές που βάζω στο Sheet1 (συγκεκριμένα στην Β στήλη) σε άλλο φύλλο Sheet2, κάθε φορά σε νέα γραμμή. Αυτή τη φορά οριζοντίως, δηλαδή 10 στήλες.

 

Υπάρχει πουθενά έτοιμος ο κώδικας? Μπορεί να βοηθήσει κάποιος?

Δημοσ.

Ναι το έχω υπ'όψην, απλά τα δεδομένα αλλάζουν κάθε φορά. Οι αλλαγές που κάνω στο Sheet1-Στήλη Β θέλω να καταχωρούνται σε νέο φύλλο σε νέα σειρά κάθε φορά.

 

πχ. Βάζω δεδομένα στο Sheet1-Στήλη Β -> πατάω κουμπί -> καταχωρούνται οριζοντίως στο Sheet2-Σειρά 1

      Βάζω νέα δεδομένα στο Sheet1-Στήλη Β -> πατάω κουμπί -> καταχωρούνται οριζοντίως στο Sheet2-Σειρά 2

Δημοσ.

Ναι το έχω υπ'όψην, απλά τα δεδομένα αλλάζουν κάθε φορά. Οι αλλαγές που κάνω στο 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
Δημοσ.

Γιατί δεν κάνεις στο excel απευθείας ανάθεση τιμής  χωρίς κουμπί

Εννοώ παττάς το κελί που θέλεις στο sheet2 και μετά = και πατάς στο κελί που θέλεις στο sheet1

Ότι τιμή δίνεις στο sheet1 θα πηγαίνει αυτόματα στο sheet2 

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...