2009-02-17 7 views

Répondre

15

Dans VBA, vbCrLf est la constante de saut de ligne (avec vbCr et vbLf).

Dans une colonne de données de chaîne, c'est Chr(13) + Chr(10) (qui correspond à vbCrLf).

7

Alors que vbCrLf, vbCr et vbLf existe, il est préférable d'utiliser vbNewLine.

Pourquoi?
1) Parce que vbNewLine sortira la séquence de nouvelle ligne pour le système d'exploitation actuel (qui peut changer) par rapport aux trois autres qui mettra seulement les caractères retour chariot et saut de ligne.
2) Parce que c'est moins cryptique. L'utilisation de vbCr est à peu près aussi mauvaise que chr (13)

Le retour logique est ... allez quand MS va changer la nouvelle ligne, ils seraient fous. Tel qu'il est, la portabilité. Il y a déjà des ports .Net à unix/linux et il n'y a aucune raison que l'accès MS ne puisse pas être émulé là non plus. (Par exemple, peut-être dans le vin)

Modifier

A parallèle à cette idée serait utilisant \ n en C et C++ vs entrant \ f \ r. \ n vous donnera la séquence newline native (même si vous passez d'Unix à Windows à Mac à Vax à QNX). Pas d'instructions conditionnelles, pas de modifications. Cela fonctionne juste.

+1

Qu'est-ce que .NET a exactement à voir avec Access? Je dois dire, je pense que votre suggestion est folle. :) –

+1

.Net est juste un exemple parallèle. Je présume que vous pourriez être en mesure d'exécuter une application d'accès MS dans Wine (aucune idée, mais la philosophie est la même). – BIBD

+3

+1. C'est un point valide. Il n'y a généralement aucune bonne raison de ne pas coder pour une portabilité optimale - maintenant ou dans le futur. – bernie

Questions connexes