একটি এক্সেল স্প্রেডশিট স্থির-প্রস্থের পাঠ্য ফাইলটিতে রফতানি করবেন?


24

এক্সেলের স্থির-প্রস্থের পাঠ্য ফাইলগুলি আমদানির কার্যকারিতা রয়েছে যেখানে এটি একটি ডায়ালগ উপস্থাপন করে যা আপনাকে ক্ষেত্রগুলির শুরু এবং শেষগুলি যেখানে কলামগুলিতে স্থাপন করবে তা চয়ন করতে দেয়।

এটির কার্যকারিতা কি আছে যেখানে একটি বিদ্যমান স্প্রেডশিট দেওয়া থাকলে আপনি একটি নির্দিষ্ট-প্রস্থের পাঠ্য ফাইলটিতে রফতানি করতে পারেন ?

যদি তাই হয় তবে আমি কীভাবে এটি অ্যাক্সেস করব? আমি সংরক্ষণাগার হিসাবে এবং টেক্সট ফাইলটি বেছে নেওয়ার চেষ্টা করেছি তবে এটি কেবল ট্যাব-সীমাবদ্ধ হিসাবে সংরক্ষণ করা বলে মনে হচ্ছে যা আমার সাহায্য করে না।

এটি এক্সেল 2003 যদি গুরুত্বপূর্ণ হয়।

উত্তর:


24

আমি মনে করি আপনি নেটিভ এক্সেল কার্যকারিতা থেকে সবচেয়ে কাছের পেতে পারেন এটি সংরক্ষণ করুন | ফর্ম্যাট করা পাঠ্য (স্পেস ডিলিমিট) (* .prn) । এটি স্বয়ংক্রিয়ভাবে প্রস্থগুলি নির্ধারণ করবে এবং প্রয়োজনীয়তার সাথে প্রস্থে প্যাড করার জন্য ফাঁকা স্থান সন্নিবেশ করবে।

এর বাইরে আপনার ম্যাক্রো বা অন্যান্য অ্যাড-ইন থাকা দরকার যা আপনাকে আরও বেশি করতে দেয়।


3
কেবল কিছু স্পষ্টতা যুক্ত করতে - এটি আপনার কলামগুলির জন্য নির্দিষ্ট করা প্রস্থের ভিত্তিতে "স্বয়ংক্রিয়ভাবে" প্রস্থগুলি নির্ধারণ করবে। সাধারণত যখন পরিমাপগুলি প্রায় এমএমএস (যতদূর আমি স্মরণ করি) এর আনুমানিক হয়, যখন স্থির প্রস্থ প্রিনে রফতানি করা হয় তখন প্রিন ফাইলের কলামে অক্ষরের সংখ্যার জন্য পূর্ণসংখ্যার মানগুলি দেওয়ার জন্য তারা আক্ষরিকভাবে এবং বৃত্তাকার হয়ে যায়। কোষগুলিতে প্রান্তিককরণের উপর নির্ভর করে বাম বা ডানদিকে প্যাডিংয়ের জন্য স্পেস যুক্ত করা হয়েছে (সুতরাং ডিফল্ট সংখ্যা অনুসারে ডানদিকে চাপানোর জন্য বামদিকে প্যাড করা হবে, বাম দিকে ডানদিকে পাঠ্য হবে, তবে আপনি যদি সারিবদ্ধ পরিবর্তন করেছেন তবে সেগুলি হবে ভিন্ন)
আদমভি

এটি আমি যা খুঁজছিলাম তা করে। ধন্যবাদ!
যৌক্তিকগীত

1
দয়া করে মনে রাখবেন: বিন্যাসকৃত পাঠ্য (.prn) Excel এ প্রতি লাইনে 240 অক্ষরের মধ্যে সীমিত আছে support.microsoft.com/kb/249885
iokevins

আইকোভিনস দ্বারা নির্দেশিত ম্যাক্রোটি ব্যবহার করতে, আপনাকে সেলটেক্সট সংজ্ঞায়িত দুটি জায়গা থেকে "& ডিলিমিটার" সরাতে হবে। অন্যথায়, এটি প্রতিটি কক্ষের জন্য অতিরিক্ত স্থান যুক্ত করবে, যা prn হিসাবে সংরক্ষণ করে না।
farrenthorpe

14

আপনার যদি অফিস পেশাদার থাকে তবে আপনি আপনার এক্সেল ফাইলটি অ্যাক্সেসে খুলতে পারবেন এবং তারপরে অ্যাক্সেস থেকে রফতানি করতে পারেন। অ্যাক্সেস আপনাকে আপনার রফতানি করা ফাইলের জন্য একটি নির্দিষ্ট-প্রস্থের বিন্যাস নির্দিষ্ট করতে দেয় এবং সেই প্রস্থগুলি নির্দিষ্ট করার জন্য আপনাকে চূড়ান্ত দানাদার নিয়ন্ত্রণ দেয়।


অ্যাক্সেস যখন এটি করতে পারে, ঠিক তেমনি এক্সেলও যা চাওয়া হয়েছিল।
আদমভি

7
ডাউনভোটের জন্য ধন্যবাদ, তবে আমি ভেবেছিলাম যে এটি উল্লেখ করা উচিত যে অ্যাক্সেসের এই বৈশিষ্ট্যটির একটি সম্পূর্ণ সংস্করণ রয়েছে। এক্সেল আপনাকে কলামের প্রস্থগুলি সরাসরি নির্দিষ্ট করতে দেয় না, অ্যাক্সেস দেয়। হ্যাঁ, আপনি কার্যপত্রকটিতে কলামের প্রস্থের সাথে ডল্লিং করে এক্সেলের ডান কলামের প্রস্থগুলি পেতে পারেন, তবে এটি একটি ব্যথা এবং নিয়মিত ভিত্তিতে স্থির প্রস্থের ফাইলগুলি তৈরি করতে হবে এমন কোনও ব্যক্তির হিসাবে এটি উপযুক্ত নয়। আপনার যদি অ্যাক্সেস থাকে (যা অনেক লোকই করেন) এর চেয়ে আরও ভাল উপায় আছে।
ডেভিডক্লি

চমৎকার; এই বিকল্পটির জন্য আপনাকে ধন্যবাদ: ও)
আইকোভিন্স

5

বাহ, আমি নিজেই এই প্রশ্নটি জিজ্ঞাসা করতে যাচ্ছিলাম তবে এটি ইতিমধ্যে জিজ্ঞাসা করা হয়েছিল। সমস্ত এক্সেল ক্লিপবোর্ড আউটপুট tabডিফল্ট অনুসারে সীমিত হয়। এটি যখন আপনার নির্দিষ্ট প্রস্থের ফন্ট থাকে তবে অগত্যা ট্যাব ডিলিমেটার সমর্থন না করে "প্রকৃত" প্লেইন পাঠ্য আউটপুটটির জন্য বিরক্তিকর।

যাইহোক, আমি একটি ছোট এক্সেল ম্যাক্রো পেয়েছি এবং সংশোধন করেছি যা বর্তমানে নির্বাচিত অঞ্চলটিকে একটি সাধারণ নির্দিষ্ট-প্রস্থের কলাম ASCII টেবিল হিসাবে অনুলিপি করবে - এরকম:

187712 201 37 0.18   
2525 580 149 0.25   
136829 137 43 0.31   

ম্যাক্রো কোডটি এখানে। এটি ব্যবহার করতে, আপনি যদি এক্সেল 2007 বা তার পরে ব্যবহার করেন তবে আপনি এক্সেল বিকল্পগুলিতে বিকাশকারী ট্যাব সক্ষম করেছেন তা নিশ্চিত করুন ।

Sub CopySelectionToClipboardAsText()

   ' requires a reference to "Windows Forms 2.0 Object Library"
   ' add it via Tools / References; if it does not appear in the list
   ' manually add it as the path C:\Windows\System32\FM20.dll

    Dim r As Long, c As Long
    Dim selectedrows As Integer, selectedcols As Integer

    Dim arr
    arr = ActiveSheet.UsedRange
    selectedrows = UBound(arr, 1)
    selectedcols = UBound(arr, 2)

    Dim temp As Integer
    Dim cellsize As Integer
    cellsize = 0
    For c = 1 To selectedcols
        temp = Len(CStr(Cells(1, c)))
        If temp > cellsize Then
            cellsize = temp
        End If
    Next c
    cellsize = cellsize + 1

    Dim line As String
    Dim output As String

    For r = 1 To selectedrows
        line = Space(selectedcols * cellsize)
        For c = 1 To selectedcols
            Mid(line, c * cellsize - cellsize + 1, cellsize) = Cells(r, c)
        Next c
        output = output + line + Chr(13) + Chr(10)
    Next r

    Dim MyData As MSForms.DataObject
    Set MyData = New DataObject
    MyData.SetText output
    MyData.PutInClipboard

    MsgBox "The current selection was formatted and copied to the clipboard"

End Sub

4

প্রথমে আপনার ডেটা কুরিয়ার নিউ (বা অন্য কোনও নির্দিষ্ট প্রস্থের ফন্ট) হিসাবে ফর্ম্যাট করুন। তারপরে .prn হিসাবে সংরক্ষণ করুন এবং আপনি সত্যিকারের নির্দিষ্ট প্রস্থ পাবেন।


এটি আমার জন্য কাজ করে মহান। আমি এটি করার আগে সবকিছুকে পাঠ্য হিসাবে ফর্ম্যাট করতে চাই। সেভ করার সময় সমস্ত ডেটা সারিবদ্ধ হয়ে যায়।
গ্যারি ব্রুনটন

2

জেফ অ্যাটউডের উত্তরটি প্রসারিত করা, যেহেতু এটি আমাকে এখানে মন্তব্য করতে দেয় না:

আমি কলামটির প্রস্থটিকে column কলামের প্রশস্ত কক্ষে সেট করতে এবং প্রতিটি কলামটির নিজস্ব প্রস্থ রাখতে তার ম্যাক্রো পরিবর্তন করেছি। তার ম্যাক্রো কেবল প্রথম সারিতে আরও বিস্তৃত কক্ষটি পেয়েছিল এবং তারপরে এটিতে সমস্ত কলামের প্রস্থ সেট করে।

Sub CopySelectionToClipboardAsText()

   ' requires a reference to "Windows Forms 2.0 Object Library"
   ' add it via Tools / References; if it does not appear in the list
   ' manually add it as the path C:\Windows\System32\FM20.dll

    Dim r As Long, c As Long, linesize As Long
    Dim selectedrows As Integer, selectedcols As Integer

    Dim arr
    arr = ActiveSheet.UsedRange
    selectedrows = UBound(arr, 1)
    selectedcols = UBound(arr, 2)
    ReDim CellSizes(1 To selectedcols, 2) As Integer

    Dim temp As Integer
    Dim cellsize As Integer
    linesize = 0
    For c = 1 To selectedcols
        cellsize = 0
        For r = 1 To selectedrows
            temp = Len(CStr(Cells(r, c)))
            If temp > cellsize Then
                cellsize = temp
            End If
        Next
        CellSizes(c, 0) = cellsize + 1
        CellSizes(c, 1) = linesize
        linesize = linesize + cellsize + 1
    Next c

    Dim line As String
    Dim output As String

    For r = 1 To selectedrows
        line = Space(linesize)
        For c = 1 To selectedcols
            Mid(line, CellSizes(c, 1) + 1, CellSizes(c, 0)) = Cells(r, c)
        Next c
        output = output + line + Chr(13) + Chr(10)
    Next r

    Dim MyData As MSForms.DataObject
    Set MyData = New DataObject
    MyData.SetText output
    MyData.PutInClipboard

    MsgBox "The current selection was formatted and copied to the clipboard"

End Sub

0

এটি আমার জন্য হত্যাকারী। এটি পাশাপাশি কয়েকটি অপশন রয়েছে।

http://www.sensefulsolutions.com/2010/10/format-text-as-table.html


যদিও এই লিঙ্কটি প্রশ্নের উত্তর দিতে পারে, উত্তরের প্রয়োজনীয় অংশগুলি এখানে অন্তর্ভুক্ত করা এবং রেফারেন্সের জন্য লিঙ্কটি সরবরাহ করা ভাল। লিঙ্কযুক্ত পৃষ্ঠাগুলি পরিবর্তিত হলে লিঙ্ক-শুধুমাত্র উত্তরগুলি অবৈধ হতে পারে।
রামহাউন্ড

2
@ রামহাউন্ড - সাধারণভাবে, আমি সম্মত। বুটি এন এই ক্ষেত্রে, আমি এখানে অনুলিপি করতে পারি এমন কিছুই নেই। সেই ওয়েবসাইটটি এমন একটি জায়গা যেখানে আপনি নিজের ইনপুট ডেটা আটকান এবং আপনি "এক্সেল-ফর্ম্যাট" আউটপুট পান। লিঙ্কটি যদি অবৈধ হয়ে যায়, তবে পরিষেবাটি চলে গেছে।
সানচো.স মনিকে পুনরায় ইনস্টল করুন

পরিষেবাটি সরানো হয়েছে: বুদ্ধিমান.github.io/web-tools/text-table , এবং উত্স উপলব্ধ: github.com/senseful/web-tools
এনজিএম

যা আবার স্থানান্তরিত হয়েছে: বুদ্ধিমান.github.io/text-table
ক্রিস

0

: এটা বাক্সের প্রবেশ আউট কাজ করে https://support.office.com/en-ie/article/export-data-to-a-text-file-f72dfc38-a8a0-4c5b-8c2c-bf2950814140#bmsteps এই সঙ্গে আমি এটিকে বেশ সহজ এবং দ্রুত ম্যানেজ করেছি - এক্সেলের চেয়ে ভাল। আমার ক্ষেত্রে এটি ছিল টেবিলের রূপান্তর।


দেখে মনে হচ্ছে আপনি নিজের উত্তরটি ভুল প্রশ্নের উপর পোস্ট করেছেন ;-) এই প্রশ্নটি এক্সেল সম্পর্কে জিজ্ঞাসা করছে, আপনার উত্তরটি অ্যাক্সেসের বিষয়ে কথা বলছে। ভবিষ্যতের উত্তরের জন্যও: রেফারেন্সের জন্য লিঙ্ক সরবরাহ করা কার্যকর, তবে আপনাকে অবশ্যই পোস্টটিতে প্রয়োজনীয় তথ্য অন্তর্ভুক্ত করতে হবে ।
রবিন্টিসট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.