Excel verilerini sabit genişlikli metin olarak nasıl yapıştırabilirim?


16

Excel'de veri kopyalayıp bir metin dosyasına yapıştırırsam, hücreler arasında sekmeler alırım. Bu iyi değil, boşluk istiyorum - ve sütunların hizalanmasını istiyorum. Bunu çok çaba harcamadan nasıl başarabilirim (açıkçası regexps'i elle çalıştırmaya başlamak istemiyorum vb.)

'Farklı Kaydet'i kullanmak ( bu soruda olduğu gibi ) benim için bir çözüm değil, kopyalamaya ve yapıştırmaya ihtiyacım var.


bir çalışma kitabından başka bir çalışma kitabına (daha sonra diğer çalışma kitabından yapıştırdığınız yere yapıştırmayı içeren olası bir çözüm var.
Pynner

@Pynner: Hiçbir çözümden daha iyi uyuyor, bu yüzden evet, devam et.
einpoklum

Yanıtlar:


14

Bunu açıklamak kesinlikle kolay değil ... ama kurulduktan sonra asgari çabayla çalışacak. Ayrıca bu @pnuts'un ana hatlarıyla açıkladığı şeyde küçük bir değişikliktir.

Kopyalayıp yapıştırabileceğiniz bir şablon e-tablo kullanmanızı öneririm. oluşturduğum şablonun aşağıdaki gibi görünen 3 sekmesi var.

sekmeler

  • Data sekmesi verinin yapıştırıldığı yerdir
  • Length en uzun sütunu belirlemek için biraz matematik yapacak
  • Space insert buradan kopyalayabileceğiniz ve doğru sonucu alabileceğiniz uygun sayıda boşluk (düzenle) ekleyecek

uzunluk sekmesi şuna benzer

uzunluk

Satır 1, aşağıdaki sütunun maksimum karakterlerine sahiptir ve formülü içerir

=MAX(A2:A101)+1

+1 sınırlayıcıyı oluşturur.

Satır 2'den n'ye (bu örnek için 100'e uzattım) her dizenin uzunluğunu değerlendirmek için bir formül içerir

=LEN('Data tab'!A1)

boşluk ekleme sekmesi şuna benzer

boşluk ekleme

Her hücre, maksimum değer (+ sınırlayıcı) ile karşılaştırıldığında kendi uzunluğunu değerlendirmek ve uygun sayıda boşluk eklemek için bir hücre içerir.

='Data tab'!A1&REPT(" ",length!A$1-length!A2)

Formülü kopyalayıp yapıştırırsanız 1. Satırı kilitleyen $

boşluk düzenleme sekmesinden kopyalayabilirsiniz.

not defteri


1
Ustaca yapmacık!
einpoklum

Ama ... neden son sayfaya ihtiyacım var? Üçüncü sayfadan kopyalayıp yapıştırabilirim. Ayrıca, her sütun için çoğaltılmış uzun formüller kullanmak istemiyorum.
einpoklum

Oldukça sağ .. son sekme gerekli değil ... hücrelerin ek karakterler ekleyeceğini varsaymıştı. Düzeltmek için cevabımı güncelleyeceğim
Pynner

Mükemmel cevap, çok teşekkür ederim. Şahsen bazı sütunlarımın çok uzun olduğu yerlerde, bu yüzden "= SOL ('boşluk ekle'! A1, $ K $ 2) & IF (Uzunluk! A2> $ K $ 2," ... | ", "|") "burada $ K $ 2 uygun bir değere ayarlanır (en önemli sütunun maks.). Bu açıklama vb., Bir sonraki adım kaydırma için iyi çalışıyor: p
chrispepper1989

bir sonraki adım sayısalların doğru hizalanması olacaktır
vlad_tepesch

3

En kolay çözüm, sayısal verilerinizi bir metin dosyasına doğru şekilde yapıştırılan "genelleştirilmiş" bir dizeye birleştirmektir. Bir satır için Excel formülünü oluşturun ve çalışma sayfasındaki tüm satırlar için kopyalayın ve formül sütununu kopyalayıp metin dosyasına yapıştırın. Örneğin,

Veri

Hücre A1: 247

B1 hücresi: 19

C1 hücresi: 1437

D1 Hücresindeki Formül

= A1 " "ve B1"," ve C1-

Metin Yapıştırılabilir Sonuç

247,19,1437

Orada başka yaklaşım formüller dayanmaz.

  • İlk olarak, veri sütunlarınızın aynı genişlikte olduğundan emin olun.
  • Ardından, her biri 2 genişliğinde veri sütunlarının her çifti arasına başka bir sütun ekleyin.
  • Eklenen sütunların her birine, verilerin uzunluğuna kopyalayarak tek bir virgül girin.
  • Son olarak, çalışma sayfasını Biçimlendirilmiş Metin (Alanı sınırlandırılmış) (* .prn) dosyası olarak kaydedin.

Bu alternatifin bir yararı, verilerinizin biçimlendirmesini korumasıdır. Verileri virgülle biçimlendirmek veya yalnızca bir ondalık basamak göstermek istiyorsanız, biçimlendirmeniz prn dosyasında korunur.


1
pnuts mprovement tam olarak doğru olduğunu önerdi. Yanıtımı Farklı Kaydet özelliğini kullanan başka bir alternatifle güncelledim.
chuff

Yani, soruda söylediğim gibi, tasarruf gibi bir seçenek değil. REPT çözümü kopya yapıştırma ile çalışır mı? Ayrıca, daha az hantal bir şey istediğim için henüz kabul etmiyorum.
einpoklum

0

Verilerinizi Word'de kopyalayabilir ve sekmeleri boşluklarla değiştirmek için Bul ve Değiştir (Ctrl + H) tuşlarını kullanabilirsiniz.

  1. Word'de veri açma ve yapıştırma
  2. Basın Ctrl+H
  3. Devamı >>
  4. Özel
  5. Beyaz boşluk
  6. Bunun yerine aşağıdakine bir boşluk bırakın:
  7. Hepsini değiştir

Bu istediğim şeyi yapmayacak, üzgünüm - sütun genişlikleri farklı olacaktır.
einpoklum
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.