মাইক্রোসফ্ট ওয়ার্ড 2010 এ মেল মার্জ ক্ষেত্রগুলি লুকান


1

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

সেগুলি খালি রাখার মতো আমি কী মুদ্রণ করতে পারি সেগুলি লুকানোর কোনও উপায় আছে ?

উত্তর:


1

ওয়ার্ডে মার্জফিল্ড ফাঁকা করার কোনও বিকল্প নেই। কেবলমাত্র Alt+ আছে F9তবে এটি «Fieldname»ফাঁকা পরিবর্তে আপনাকে ছেড়ে দেয় ।

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

Sub Demo()
Dim oFld As Field
For Each oFld In ActiveDocument.Fields
  With oFld
    If .Type = wdFieldMergeField Then
      .Code.Text = "QUOTE " & Chr(34) & "______" & Chr(34)
      .Update
      .Unlink
    End If
  End With
Next
End Sub

সম্পাদনা:

আপনি এখানে যেমন একটি অনুরোধ করেছেন যেখানে আসল ফাইলটি প্রথমে সংরক্ষণ করা হয়, তারপরে একটি নতুন নথিতে "যুক্ত", মার্জফিল্ডগুলি মোছা, নথি মুদ্রিত এবং আবার বন্ধ হয়ে যায় closed (সব একসাথে কিছু মন্তব্য সহ)
আপনি যদি নিশ্চিত হন যে দস্তাবেজটি পরিবর্তন করা হয়নি তবে আপনি .Saveলাইনটি এড়িয়ে যেতে পারেন । তবে আপনি যদি সংরক্ষণ না করেই পরিবর্তনগুলি করেন তবে আপনার মুদ্রিত অনুলিপিটি আপনার বর্তমান ফাইল নয়, সংরক্ষিত ফাইলের হবে।

আমি ভিবিএতে কোডিং করে কিছুক্ষণ হয়ে গেছে তবে আমি মনে করি এটি কাজ করছে;)

Sub PrintCopyWithoutMergeFields()
  Dim oFld As Field

  ' save the original, needs to be done to add it as copy
  ActiveDocument.Save

  ' copy the original to a new document
  Application.Documents.Add ActiveDocument.FullName

  ' loop through all the fields and delete mergefields
  For Each oFld In ActiveDocument.Fields
    With oFld
      If .Type = wdFieldMergeField Then
        .Code.Text = "QUOTE " & Chr(34) & "______" & Chr(34)
        .Update
        .Unlink
      End If
    End With
  Next

  ' print the copy with the print-dialog
  Dialogs(wdDialogFilePrint).Show

  ' if you don't want the print-dialog, use this for the default printer
  ' Application.PrintOut

  ' close the copy without asking to save
  ActiveDocument.Close False

End Sub

ধন্যবাদ একটি মোহন মত কাজ করে। এই ম্যাক্রোটি সমস্ত ক্ষেত্র মোছার আগে একটি নতুন দস্তাবেজ তৈরি করা কি খুব কঠিন হবে?
vmassuchetto

@ ভিনিসিয়াসমাসুচেটো আমি অনুলিপি এবং মুদ্রণ এবং আবার অনুলিপি বন্ধ করে আমার উত্তরে একটি উদাহরণ যুক্ত করেছি। (কিছু মন্তব্য সহ, খুব)
রিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.